/ इसे आकर्षित करने के लिए आसान तरीका? - जावा

इसे आकर्षित करने का आसान तरीका? - जावा

मैं एक प्रकार का क्रॉसहेयर आकर्षित करने का प्रयास कर रहा हूंजावा ग्राफिक्स विधियों। मैंने यह लिखा लेकिन यह बहुत अधिक लगता है और मुझे लगता है कि इसे थोड़ा सा सरल बनाया जा सकता है। इसमें एक तस्वीर शामिल होगी जो यह दिखता है।

मैं इसे कैसे सरल बना सकता हूं?

    graphics.setColor(mainColor);
graphics.drawRect(Mouse.getPos().x - 13, Mouse.getPos().y - 13, 27, 27); // Rectangle stroke.
graphics.drawRect(Mouse.getPos().x, Mouse.getPos().y - 512, 1, 500);     // Top y axis stroke.
graphics.drawRect(Mouse.getPos().x, Mouse.getPos().y + 13, 1, 500);      // Bottom y axis stroke.
graphics.drawRect(Mouse.getPos().x + 13, Mouse.getPos().y, 800, 1);      // Right x axis stroke.
graphics.drawRect(Mouse.getPos().x - 812, Mouse.getPos().y, 800, 1);     // left x axis stroke.
graphics.fillOval(Mouse.getPos().x - 3, Mouse.getPos().y - 3, 7, 7);     // Center dot stroke.
graphics.setColor(offColor);
graphics.drawRect(Mouse.getPos().x - 12, Mouse.getPos().y - 12, 25, 25); // Rectangle.
graphics.drawRect(Mouse.getPos().x, Mouse.getPos().y - 512, 0, 500);     // Top y axis line.
graphics.drawRect(Mouse.getPos().x, Mouse.getPos().y + 13, 0, 500);      // Bottom y axis line.
graphics.drawRect(Mouse.getPos().x + 13, Mouse.getPos().y, 800, 0);      // Right x axis line.
graphics.drawRect(Mouse.getPos().x - 812, Mouse.getPos().y, 800, 0);     // left x axis line.
graphics.fillOval(Mouse.getPos().x - 2, Mouse.getPos().y - 2, 5, 5);     // Center dot.

यह वही दिखता है और यह कैसा दिखता है। यहां छवि विवरण दर्ज करें

उत्तर:

उत्तर № 1 के लिए 1

एक सरलीकरण एक विधि बनाना होगा जो लपेटता है Graphics#drawRect तरीका।

उदाहरण:

private static void drawRect (Graphics g, int x, int y, int width, int height)
{
g.drawRect(Mouse.getPos().x + x, Mouse.getPos().y + y, width, height);
}

फिर यह कॉलिंग कोड चला जाता है:

graphics.drawRect(Mouse.getPos().x - 13, Mouse.getPos().y - 13, 27, 27); // Rectangle stroke.
graphics.drawRect(Mouse.getPos().x, Mouse.getPos().y - 512, 1, 500);     // Top y axis stroke.
graphics.drawRect(Mouse.getPos().x, Mouse.getPos().y + 13, 1, 500);      // Bottom y axis stroke.
graphics.drawRect(Mouse.getPos().x + 13, Mouse.getPos().y, 800, 1);      // Right x axis stroke.
graphics.drawRect(Mouse.getPos().x - 812, Mouse.getPos().y, 800, 1);     // left x axis stroke.

सेवा मेरे:

drawRect(graphics, -13, -13, 27, 27);  // Rectangle stroke.
drawRect(graphics, 0, -512, 1, 500);   // Top y axis stroke.
drawRect(graphics, 0, 13, 1, 500);     // Bottom y axis stroke.
drawRect(graphics, 13, 0, 800, 1);     // Right x axis stroke.
drawRect(graphics, -812, 0, 800, 1);   // left x axis stroke.