मैंने एक कस्टम आकार बनाया है, अनिवार्य रूप से यह चार आर्क 2 डी ऑब्जेक्ट्स का संग्रह है।जावा - एक कस्टम आकार भरना
जब इन आर्कों को खींचा जाता है तो वे एक चार बिंदु गोलाकार सितारा आकार, एक क्लॉवर की तरह माना जा सकता है। जहां एक चाप समाप्त होता है, दूसरा शुरू होता है। वे केंद्र में एक वर्ग बनाते हैं। तो कल्पना करें, एक वर्ग लेना और हर तरफ आधा सर्कल बनाना।
मैं इस आकृति को ग्राफिक्स 2 डी ऑब्जेक्ट में खींच सकता हूं, लेकिन जब मैं इसे भरता हूं, तो यह केवल आर्क को भर देगा, न कि केंद्र वर्ग। इस आंतरिक वर्ग को भरना मेरी समस्या है।
मैंने नीचे getPathIterator()
विधि लागू की है। मैंने विधियों को भी लागू किया है। लेकिन यह अभी भी केवल arcs भर जाएगा।
मैंने Rectangle
जोड़ने की कोशिश की। आकार भरते समय, आयत/वर्ग ठीक से भर दिया जाएगा, हालांकि यह आयताकार भी खींचता है, जो स्पष्ट रूप से अपेक्षित होना चाहिए, लेकिन निश्चित रूप से वांछित परिणाम नहीं।
तो, क्या किसी के पास इस तरह के आकार को "भरने" के बारे में कोई विचार है?
public PathIterator getPathIterator(AffineTransform at) {
GeneralPath gp = new GeneralPath
for (Arc2D arcs : this.arcs) {
gp.append(arc, false);
}
return gp.getPathIterator(at);
}
के लिए घुमावदार नियम क्या आपके 'Arc2D' उदाहरणों को बंद करने के प्रकार है? – trashgod