में एकाधिक लाइनों को चित्रित करना मैं एक bufferedimage पर क्षैतिज और लंबवत रेखा खींचने की कोशिश कर रहा हूं। इसे कोशिकाओं के ग्रिड की तरह दिखना चाहिए। लेकिन जब मैं कोड चलाता हूं, तो मुझे केवल दो पंक्तियां दिखाई देती हैं: बाएंतम रेखा और सबसे ऊपर की रेखा (यानी 0,0 से 0 तक की रेखा, छवि की ऊंचाई & 0,0 छवि की चौड़ाई, 0) कोड स्निपेट है :BufferedImage
BufferedImage mazeImage = new BufferedImage(imgDim.width, imgDim.height, BufferedImage.TYPE_INT_RGB);
Graphics2D g2d = mazeImage.createGraphics();
g2d.setBackground(Color.WHITE);
g2d.fillRect(0, 0, imgDim.width, imgDim.height);
g2d.setColor(Color.BLACK);
BasicStroke bs = new BasicStroke(2);
g2d.setStroke(bs);
// draw the black vertical and horizontal lines
for(int i=0;i<21;i++){
g2d.drawLine((imgDim.width+2)*i, 0, (imgDim.width+2)*i, imgDim.height-1);
g2d.drawLine(0, (imgDim.height+2)*i, imgDim.width-1, (imgDim.height+2)*i);
}
और ओवरराइड रंग विधि:
public void paint(Graphics g) {
g.drawImage(mazeImage, 0, 0, this);
}
यह सब एक वर्ग RobotMaze कहा जाता है कि JPanel फैली है। किसी भी मदद की सराहना की है।
आह Dammit मैं! पूरे आयामों के बजाय प्रत्येक सेल चर के आकार का उपयोग करना था ... लंगड़ा प्रश्न लोगों के लिए खेद है और इसे इंगित करने के लिए धन्यवाद। – Adith