परत सीमा के संदर्भ में QGIS का क्या जिक्र है, यह वास्तव में ज्यामिति का लिफाफा या बाउंडिंग बॉक्स है।
मैंने एक समाधान का दस्तावेजीकरण किया है जो संभवत: निकटतम है जिसे आप इसे स्वचालित करने के लिए प्राप्त करेंगे (एक बग / सुविधा अनुरोध दर्ज करने की कमी)।
प्रक्रिया दो वस्तुओं के क्षेत्र के बीच के अनुपात के आधार पर काम करती है: फीचर ज्यामिति और यह बाउंडिंग बॉक्स है)।
नीचे दिए गए चरणों की जाँच करें:
उस परत का चयन करें जिस पर आप काम करना चाहते हैं।
उस सुविधा का चयन करें जिस पर आप काम करना चाहते हैं। सुनिश्चित करें कि और कुछ नहीं चुना गया है।
पायथन कंसोल के भीतर निम्नलिखित स्निपेट चलाएँ।
layer = qgis.utils.iface.activeLayer()
features = layer.selectedFeatures()
feature = features[0]
geom = feature.geometry()
env_rect = geom.boundingBox()
env_geom = QgsGeometry.fromRect(env_rect)
env_geom.area() / geom.area()
दर्ज करने के लिए सुनिश्चित करें कि अंतिम पंक्ति स्वचालित रूप से वापस नहीं आएगी।
Regular Points
टूल को फिर से चलाएं , लेकिन अपने स्क्रिप्ट द्वारा दिए गए आउटपुट से गुणा किए गए बॉक्स के अंदर जितने अंक चाहते हैं, दर्ज करें ।
नीचे दिए गए मेरे नमूने में, मुझे आउटपुट से प्राप्त परिणाम ~ 2 का मान था। मैंने 20 डॉट्स को उस प्रक्रिया से आउटपुट करने का अनुरोध किया जहां मैं वास्तव में केवल 10 चाहता था। मुझे बदले में 8 दिया गया था, जो काफी करीब है। आपके द्वारा उपयोग किए जा रहे वास्तविक आकार के आधार पर परिणाम अलग-अलग होंगे।
यदि आप इतने इच्छुक थे, तो आप अपने इच्छित नंबर पर आने तक चरों को संशोधित करके नियमित अंक प्रक्रिया को स्वचालित (पुनरावर्ती) कर सकते हैं।