اذهب إلى المحتوى
  • 0

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

محمدنهمار

السؤال

Recommended Posts

  • 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

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...