SVG प्लॉट करने से पहले AxiDraw का पाथ क्रम जाँचें
कागज से उठाए गए पेन के साथ पथ क्रम, उत्क्रमण और गति की जांच करने के लिए AxiDraw ऑफ़लाइन SVG पूर्वावलोकन की तुलना करें। ड्राइंग ज्यामिति को सुरक्षित रखें और समझें कि सहेजे गए SVG में क्या बरकरार रहता है।
इस पेज पर
AxiDraw में SVG पेन यात्रा को अनुकूलित करने के लिए, पहले पुष्टि करें कि पथ आपके इच्छित चिह्न खींचते हैं। फिर समान ज्यामिति और निश्चित सेटिंग्स के साथ ऑफ़लाइन पूर्वावलोकन की तुलना करें। लिफ्टों की संख्या को कम किए बिना या खींची गई आकृतियों को बदले बिना उठाए गए पेन के साथ पुन: व्यवस्थित करने से पेन की गति कम हो सकती है।
अपना मूल SVG रखें. नीचे दिया गया पूर्वावलोकन क्रम और वैकल्पिक पथ उत्क्रमण की जाँच करता है; यह केंद्र रेखाओं का पुनर्निर्माण नहीं करता है, अवांछित रूपरेखाओं की मरम्मत नहीं करता है या मूल SVG वस्तुओं को स्थायी रूप से पुनर्व्यवस्थित नहीं करता है। हमारा परीक्षण आठ लिखित खुले स्ट्रोक का उपयोग करता है, न कि PerfectVector या भौतिक पेन ड्राइंग से वेक्टरकृत रूपरेखा का।
क्रम बदलने से पहले छलांग का निदान करें
कागज को छूने वाली कलम की गति वह मार्ग है जो निशान बनाती है। कागज से ऊपर उठाई गई कलम के साथ गति, ऊपर उठाए गए कलम के साथ निशानों के बीच की गति है। एक छोटी दिखने वाली ड्राइंग में कागज से उठाए गए पेन के साथ लंबी गति हो सकती है जब क्रमिक वस्तुएं दूर-दूर बैठती हैं।
| पूर्वावलोकन क्या दिखाता है | पहले क्या संबोधित करें |
|---|---|
| एक रेखा के चारों ओर दो किनारे जो एक स्ट्रोक होने चाहिए | इच्छित एकल-पंक्ति मार्ग का निर्माण करें |
| एक खाली परिधि जहाँ आप एक छायादार क्षेत्र चाहते थे | स्पष्ट हैच-फिल पेन पथ बनाएं |
| सही निशान, लेकिन पृष्ठ पर बार-बार कूदना | नीचे पथ अनुक्रमण और पथ-दिशा उत्क्रमण सेटिंग्स की तुलना करें |
| अलग-अलग चिह्नों के बीच खींची गई अवांछित रेखाएँ | किसी भी छोटे मार्ग को स्वीकार करने से पहले पेन-डाउन ज्यामिति और पथ जुड़ाव की जाँच करें |
SVG पथ लंबाई मापने से पता चलता है कि ड्राइंग ज्यामिति कितनी लंबी है। इसमें उन रास्तों के बीच मशीन की यात्रा शामिल नहीं है।
AxiDraw CLI संदर्भ इन सेटिंग्स को अलग करता है: 0 आम तौर पर उपलब्ध जुड़ाव के साथ दस्तावेज़ क्रम का पालन करता है, 1 पथों को पुन: व्यवस्थित भी करता है, और 2 पथ उलटने की भी अनुमति देता है। आसन्न ड्राइंग पथों को जोड़ना एक अलग निर्णय है। इस तुलना के लिए, हम इसे min_gap = -1 के साथ अक्षम करते हैं ताकि आसन्न स्ट्रोक एक निरंतर चिह्न न बन सकें।
दिशा-संवेदनशील कार्य के लिए उलटफेर मायने रख सकता है। यदि ड्राइंग को किसी विशेष लेखन अनुक्रम या दिशा का पालन करना चाहिए, तो ऊपर उठाए गए पेन के साथ एक छोटा आंदोलन मार्ग सेटिंग 2 को स्वीकार करने के लिए पर्याप्त कारण नहीं है। परतें छँटाई में भी बाधा डालती हैं; नेस्टेड समूहों को अनुकूलन के तहत ड्राइंग अनुक्रम को संरक्षित करने के लिए नहीं माना जाना चाहिए। अपने दस्तावेज़ के वास्तविक पूर्वावलोकन का निरीक्षण करें।
अपरिवर्तित SVG पर तीन ऑफ़लाइन पूर्वावलोकन चलाएँ
इस उदाहरण की आवश्यकता है Python और अधिकारी AxiDraw Python एपीआई. हमने एपीआई का परीक्षण किया 3.9.6 साथ Python 3.9.6. अधिकारी का अनुसरण करें स्थापना निर्देश यदि मॉड्यूल स्थापित नहीं है Python आपके द्वारा उपयोग किया जाने वाला वातावरण।
Python API संदर्भ पूर्वावलोकन को ऑफ़लाइन सिमुलेशन के रूप में परिभाषित करता है। preview = True के बाद plot_setup और से पहले plot_run सेट करें। नीचे दी गई स्क्रिप्ट हमेशा इसे सेट और मुखर करती है; इसमें कोई डिवाइस कनेक्शन कॉल नहीं है.
इस छोटे से उदाहरण को eight-strokes.svg के रूप में सहेजें, या अपने स्वयं के SVG के डुप्लिकेट का उपयोग करें:
<svg xmlns="http://www.w3.org/2000/svg" width="100mm" height="80mm" viewBox="0 0 100 80">
<g fill="none" stroke="#152b3b" stroke-width="0.4">
<path id="stroke-0" d="M 10 20 L 18 20"/>
<path id="stroke-1" d="M 88 60 L 80 60"/>
<path id="stroke-2" d="M 20 20 L 28 20"/>
<path id="stroke-3" d="M 78 60 L 70 60"/>
<path id="stroke-4" d="M 30 20 L 38 20"/>
<path id="stroke-5" d="M 68 60 L 60 60"/>
<path id="stroke-6" d="M 40 20 L 48 20"/>
<path id="stroke-7" d="M 58 60 L 50 60"/>
</g>
</svg>फिक्सचर में 100 × 80 मिमी व्यूपोर्ट और मिलान viewBox आयाम हैं। SVG के व्यूपोर्ट और व्यूबॉक्स मैपिंग का अनुसरण करते हुए, यहां प्रत्येक समन्वय इकाई को 1 मिमी तक मैप किया जाता है। इसके आठ स्ट्रोक में से प्रत्येक 8 मिमी लंबा है।
निम्नलिखित को preview-orders.py के रूप में सहेजें:
from pathlib import Path
import json
import sys
from pyaxidraw import axidraw
source = Path(sys.argv[1]).resolve()
destination = Path(sys.argv[2])
destination.mkdir() # Use a new directory; preserve previous results.
reports = []
for order in (0, 1, 2):
ad = axidraw.AxiDraw()
ad.plot_setup(str(source))
ad.options.preview = True
ad.options.rendering = 3
ad.options.reordering = order
ad.options.random_start = False
ad.options.auto_rotate = False
ad.options.report_time = False
ad.params.min_gap = -1
assert ad.options.preview is True
output = ad.plot_run(True)
if ad.errors.code:
raise RuntimeError(f"Preview error: {ad.errors.code}")
(destination / f"preview-order-{order}.svg").write_text(output)
reports.append({
"order": order,
"pen_down_m": ad.distance_pendown,
"pen_up_m": ad.distance_total - ad.distance_pendown,
"pen_lifts": ad.pen_lifts,
})
report = json.dumps(reports, indent=2)
(destination / "distances.json").write_text(report + "\n")
print(report)इसे के साथ चलाएँ Python नए आउटपुट-निर्देशिका नाम का उपयोग करते हुए, आधिकारिक एपीआई युक्त वातावरण:
python3 preview-orders.py eight-strokes.svg preview-checkयह तीन डायग्नोस्टिक SVG और बचाता है distances.json. rendering = 3 इसमें उठाए गए और खींचे जाने वाले दोनों प्रकार के आंदोलन शामिल हैं। यादृच्छिक प्रारंभ और स्वचालित रोटेशन बंद हैं; पथ सम्मिलन अक्षम है. अपनी फ़ाइल की तुलना करते समय उन विकल्पों को निश्चित रखें। यह स्क्रिप्ट एक ऑफ़लाइन निरीक्षण विधि है, प्लॉटर को संचालित करने का आदेश नहीं।
उठाए गए और खींचे गए पेन की ज्यामिति से अलग-अलग गति की तुलना करें
हमारे आठ-स्ट्रोक फिक्सचर पर, सटीक स्क्रिप्ट तैयार की गई:
| पुन: क्रम | कागज से कलम उठाकर अनुमानित गति | कागज को छूते हुए कलम की गति | रिपोर्ट की गई लिफ्टें |
|---|---|---|---|
0 | 0.509749 मी | 0.064 मी | 8 |
1 | 0.223592 मी | 0.064 मी | 8 |
2 | 0.180919 मी | 0.064 मी | 8 |
ये इस फ़ाइल के लिए मूल सॉफ़्टवेयर अनुमान हैं, जिसमें प्रारंभ से लेकर घर वापसी तक की यात्रा शामिल है। पेन-डाउन दूरी 64 मिमी रही और लिफ्ट गिनती आठ रही। कागज से ऊपर उठाए गए पेन के साथ कम गति का मतलब कम लिफ्ट नहीं है। हमने किसी भौतिक पेन ड्राइंग, बीते हुए प्लॉटिंग समय या किसी अन्य ड्राइंग के लिए गारंटीशुदा सुधार को नहीं मापा।

स्टैक्ड आंकड़ा सेटिंग्स की तुलना करता है 0 और 2; तालिका में यह भी शामिल है 1. यह मजबूत नीले और मैजेंटा रंगों और सुपाठ्यता के लिए मोटे स्ट्रोक के साथ मूल एसडीके पूर्वावलोकन पथों की प्रतियां प्रदर्शित करता है। ये प्रदर्शन शैलियाँ हैं, भौतिक पेन चौड़ाई नहीं। मूल पथ निर्देशांक और परिवर्तन अपरिवर्तित हैं; डिस्प्ले व्यूपोर्ट अप्रयुक्त स्थान को क्रॉप करता है। सभी तीन मूल पूर्वावलोकनों का निरीक्षण किया गया, और एक स्वतंत्र ज्यामिति जांच में समान आठ क्षैतिज ड्राइंग खंड पाए गए, जिससे उनके समापन बिंदु क्रम को उलटने की अनुमति मिली। प्रत्येक नमूना पेन-डाउन शीर्ष अपने इच्छित खंड पर बना रहा।
अपनी फ़ाइल के लिए, प्रत्येक पूर्वावलोकन SVG खोलें और उभरी हुई-यात्रा परत से अलग ड्राइंग परत की जांच करें। इच्छित पृष्ठ आकार और स्थान, सभी अपेक्षित चिह्न, अपरिवर्तित छेद या अंतराल और कोई नया खींचा गया कनेक्टर नहीं होने की पुष्टि करें। जांचें कि कोई भी उलटा स्ट्रोक स्वीकार्य है। उस मार्ग को अस्वीकार करें जो गलत निशान बनाता है, भले ही उसकी दूरी रिपोर्ट छोटी हो।
समझें कि सहेजा गया पूर्वावलोकन क्या सुरक्षित रखता है
AxiDraw का पुनर्व्यवस्थित दस्तावेज़ बताता है कि अनुकूलन एक अस्थायी प्रतिलिपि में होता है। सहेजे गए आउटपुट SVG में मूल ऑब्जेक्ट अपना मूल क्रम बनाए रखते हैं। हमारे आउटपुट ने इसी तरह प्रत्येक मूल stroke-* पथ और उसके मूल अनुक्रम को बरकरार रखा है।
इसलिए, preview-order-2.svg एक नैदानिक पूर्वावलोकन है, यह इस बात का प्रमाण नहीं है कि कोई अन्य प्रोग्राम स्थायी रूप से पुन: व्यवस्थित आर्टवर्क फ़ाइल को पढ़ेगा। स्रोत, चुने गए विकल्प और तुलना रिपोर्ट को एक साथ रखें। बाद में AxiDraw के साथ मूल का उपयोग करते समय, उचित प्लॉटिंग वर्कफ़्लो में इच्छित ऑर्डरिंग सेटिंग्स को फिर से लागू करें।
यदि आपकी समस्या अवांछित ड्राइंग ज्यामिति है, तो मार्ग-निर्माण चरण पर वापस लौटें। यदि केवल कलम उठाए हुए आंदोलन मार्ग बेकार है, तो निश्चित-सेटिंग पूर्वावलोकन की तुलना करें। भौतिक आकार, पेन व्यवहार और मशीन संचालन को अभी भी अपनी स्वयं की जाँच की आवश्यकता होती है; यह ऑफ़लाइन नियंत्रण उन्हें सिद्ध नहीं करता.
इस जाँच से पहले PerfectVector कहाँ फिट बैठता है
यदि आपके पास अभी भी केवल रेखापुंज कलाकृति है और आप संपादन योग्य वेक्टर आकृतियों के रूप में रंग भरने के साथ इसकी दृश्यमान रूपरेखा आकृतियाँ चाहते हैं, तो PerfectVector's छवि वेक्टराइज़र एक उपयुक्त प्रारंभिक कदम हो सकता है। अपने स्रोत की रूपरेखा और छिद्रों के सामने इसके पूर्वावलोकन का निरीक्षण करें। यह एक भी केंद्र रेखा का अनुमान नहीं लगाता है या AxiDraw पथ क्रम को अनुकूलित नहीं करता है; जब आपको उन मार्गों की आवश्यकता हो तो सेंटरलाइन या हैच वर्कफ़्लो का उपयोग करें।
यदि आपके पास पहले से ही सही SVG मार्ग हैं, तो उन्हें रखें और सीधे ऑफ़लाइन जांच करें। SVG को पुनः ट्रेस करने से ऑर्डर संबंधी कोई जानकारी गायब नहीं होती है। PerfectVector का संरक्षित पूर्वावलोकन केवल देखने के लिए है; किसी परिणाम को संपादित करने और निर्यात करने के लिए उसे अनलॉक करना आवश्यक है।
अक्सर पूछे जाने वाले प्रश्न
क्या AxiDraw पुनः व्यवस्थित करने से मेरे SVG का ऑब्जेक्ट क्रम स्थायी रूप से बदल जाता है? नहीं, प्रलेखित अनुकूलन एक अस्थायी प्रतिलिपि का उपयोग करता है। सहेजे गए पूर्वावलोकन में डायग्नोस्टिक मूवमेंट परतें होती हैं, जबकि मूल कलाकृति ऑब्जेक्ट अपना क्रम बनाए रखते हैं। चुनी गई सेटिंग को अलग से सुरक्षित रखें.
पेपर से उठाए गए पेन की गति कम क्यों हो गई जबकि लिफ्ट की संख्या समान रही? उन्हीं आठ अलग-अलग स्ट्रोक्स को एक अलग क्रम या दिशा में देखा जा सकता है। पाथ जॉइनिंग अक्षम के साथ हमारे परीक्षण संदर्भ में, सभी सेटिंग्स ने आठ लिफ्टों और 64 मिमी ड्राइंग की सूचना दी, जबकि पेन को ऊपर उठाने पर मूवमेंट बदल गया।
क्या ऑर्डर करने से डबल-आउटलाइन ट्रेस ठीक हो सकता है या छायांकन उत्पन्न हो सकता है? नहीं, पहले ड्राइंग रूट ठीक करें। एक स्ट्रोक के लिए सेंटरलाइन वर्कफ़्लो का उपयोग करें, या क्षेत्र छायांकन के लिए स्पष्ट हैच पथ बनाएं, फिर उस स्वीकृत ज्यामिति पर ऑर्डर की तुलना करें।
स्रोत
- AxiDraw - Python API संदर्भ - ऑफ़लाइन पूर्वावलोकन और रेंडरिंग को परिभाषित करता है, उदाहरण के साथ पूर्वावलोकन SVG लौटाता है।
- AxiDraw - CLI संदर्भ - इंस्टॉलेशन, पथ अनुक्रमण और पथ-दिशा उत्क्रमण सेटिंग्स, परत प्रबंधन और अस्थायी अनुकूलन को कवर करता है।
- W3C - SVG कोऑर्डिनेट सिस्टम, ट्रांसफॉर्मेशन और यूनिट्स - आयामित उदाहरण द्वारा उपयोग की जाने वाली व्यूपोर्ट मैपिंग की व्याख्या करता है।
क्या आप अभी भी एक रेखापुंज रेखाचित्र से शुरुआत कर रहे हैं जिसकी आपको रंग भरने वाली रूपरेखा वाली आकृतियों की आवश्यकता है? अपनी स्वयं की छवि से निःशुल्क शुरुआत करें, फिर स्रोत के सामने पूर्वावलोकन की रूपरेखा और छिद्रों का निरीक्षण करें। एक बार इच्छित पेन रूट मौजूद हो जाने पर, ऊपर दी गई ऑफ़लाइन विधि से उनके क्रम को अलग से जांचें।
Blog से और
V-कार्व गहराई: चौड़े लोगो स्ट्रोक गहरे क्यों कटते हैं
जानें कि चित्र की चौड़ाई और V-बिट कोण कार्विंग गहराई कैसे तय करते हैं, लोगो उदाहरण गणना करें और फ़्लैट गहराई, पास गहराई तथा ट्रेस सीमा ज्यामिति अलग समझें।
SVG की स्कोर और कट लाइनें: ज्यामिति समझें
Score या Cut चुनने से पहले SVG की फोल्ड ज्यामिति पढ़ें। खुले पाथ, भरी पट्टियाँ और डैश की तुलना करें, फिर Cricut का दस्तावेज़ित ऑपरेशन तरीका जाँचें।


