• 0

كيف أستطيع رسم دوائر أو مستطيلات باستخدام جافا؟

  • 0

يمكنك ذلك باستخدام Java 2D حيث تمكنك مكتبة Java 2D من رسم أشكال ثنائية الأبعاد كالمستطيلات والدوائر والمثلثات...الخ

أولًا عليك استيراد مكتبة awt.Graphics

import java.awt.Graphics;

والمكتبتين:

import javax.swing.JComponent;
import javax.swing.JFrame;

ثم أنشئ صف Class وليكن مثلًا myCanvas واجعله يرث من الصف JComponant ثم أعد تعريف التابع paint وتمرير معامل من نوع Graphics والذي ستستخدمه لاستدعاء الدالة drawRect لرسم مستطيل كما في المثال التالي:

class MyCanvas extends JComponent {

  public void paint(Graphics g) {
    g.drawRect (10, 10, 200, 200);  
  }
}

تقوم الدالة drawRect برسم مستطيل محدّد بالزاوية اليسارية العليا 10,10 وبطول 200 وعرض 200.

لرسم دائرة استدعي الدالة drawOval وحدّد قيمة المعاملات (إحداثيات نقطة البداية، الطول، العرض):

  g.drawOval(10, 20, 50, 50);

java2d1.thumb.png.5c3d1e806b128d8fefaa0c

لرسم أشكال ذات مساحة لونية Solid استدعي الدالة FillRect لرسم المستطيل والدالة EillOval لرسم دائرة. يمكنك تحديد لون الشكل الذي سترسمه عن طريق استدعاء الدالة setColor من الكائن g كما في المثال التالي:

class MyCanvas extends JComponent {

  public void paint(Graphics g) {
  //g.drawRect (10, 10, 200, 200);  
  //g.drawOval(10, 20, 50, 50);
    
    g.setColor (Color.yellow); 
    g.fillRect(50, 100, 100, 50);
    g.setColor (Color.red); 
    g.fillOval(80, 10, 60, 60);
    g.setColor (Color.blue); 
    g.fillRect(120, 120, 100, 50);
 
  }
}

java2d2.thumb.png.a1a3cc1ae3b7080db45108

المثال كامل:

import java.awt.Color;
import java.awt.Graphics;

import javax.swing.JComponent;
import javax.swing.JFrame;

class MyCanvas extends JComponent {

  public void paint(Graphics g) {
  //g.drawRect (10, 10, 200, 200);  
  //g.drawOval(10, 20, 50, 50);
    
    g.setColor (Color.yellow); 
    g.fillRect(50, 100, 100, 50);
    g.setColor (Color.red); 
    g.fillOval(80, 10, 60, 60);
    g.setColor (Color.blue); 
    g.fillRect(120, 120, 100, 50);
 
  }
}

public class DrawRect {
  public static void main(String[] a) {
    JFrame window = new JFrame();
    window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    window.setBounds(30, 30, 300, 300);
    window.getContentPane().add(new MyCanvas());
    window.setVisible(true);
  }
}

رسم الأشكال في java 2D

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن