यदि मेरे पास दो सरल आकारों (बहुभुज और एलिप्स) के संघ से बने दो java.awt.geom.Area
हैं, तो क्या दो क्षेत्रों के बीच दूरी (यानी निकटतम दूरी) खोजने के लिए वहां कोई तरीका है?जावा में दो आकार/क्षेत्रों के बीच की दूरी?
स्पष्ट करने के लिए: लगता है मैं दो मनमाना क्षेत्रों, जिनमें से प्रत्येक किसी भी प्रकार के आकार के मिलन से बनाई गई है है:
//Define the first area
Area a = new Area(new Ellipse2D.Double(50, 50, 100, 100));
a.add(new Area(new Rectangle2D.Double(100, 100, 100, 100)));
//Define the second area
Area b = new Area(new Ellipse2D.Double(200, 300, 100, 100));
b.add(new Area(new Ellipse2D.Double(250, 250, 100, 100)));
क्या मैं चाहता हूँ एक विधि getDistance(Area a, Area b)
है कि मुझे कम से कम का प्रतिनिधित्व एक डबल देता है क्षेत्र ए में किसी भी बिंदु और क्षेत्र बी में किसी भी बिंदु के बीच की दूरी।
वहाँ है एक तरीका है वहाँ यह करने के लिए: यहाँ दूरी मैं में दिलचस्पी रखता हूँ यह दर्शाता है नीले रंग में एक लाइन के साथ उपरोक्त दो क्षेत्रों की एक छवि है? यदि नहीं, तो मैं एक को कैसे कार्यान्वित कर सकता हूं?
धन्यवाद! PathIterator अब तक मेरे उद्देश्यों के लिए अच्छी तरह से काम करता है, विशेष रूप से flattened पथ iterator। – MarcTheSpark