Şimdi Ara

Yardımınıza ihtiyacım var

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
2
Cevap
0
Favori
123
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Öncelikle herkese merhabalar. Senelerdir forumu takip ederdim katılmak bu güne nasip oldu. Sizin değerli bilgilerinize ihtiyacım var.
    Ben lisans öğrencisiyim ve internet tabanlı programlama dersinden proje ödevim var ama hocamız bizden dersde öğretmediği bir şey istedi.
    İnternette saatlerce aramam sonucu kayda değer hiç bir şey bulamadım o yüzden son umudum sizlersiniz.
    Ödevimin konusu picture box üzerine mouse ile bölge çizerek alan hesabı yapan program. Bu arada kullandığım program visual studio.

    Hocanın açıklamasınıda size ekleyeyim.
    Düz bir yüzey üzerindeki arsanın alanını hesaplamak için aşağıdaki formül kullanılır. Bu formülün örnek
    hesaplarla doğruluğunu kontrol ederek programını yazınız. Programda Picturebox üzerine bir koordinat sistemi
    çizdirin. Picturebox üzerinde mouse ile tıklayarak arsanın köşe koordinatları işaretlensin. Bu esnada arsanın
    sınırlarınıda çizsin. Nokta sayısı 3 den fazla olarak istenilen kadar olabilsin. İstenirse Picturbox'ın arka planında
    arsanın hava fotografı yükleyebilin. Bu fotograf üzerindeki arsanın köşe noktalarına tıklayınca doğru bir şekilde
    arsanın alanını göstersin. Ayrıca arsanın çevresini hesaplasın. Bunun için Analitik geometrideki iki nokta
    arasındaki mesafeyi veren formülü öğrenin. Yaptığınız hesaplamanın kontrolünü Google Earth programını
    kullanarak kontrol edin. Bu programda Poligon (çokgen) hesaplama özelliği ile bu işlem yapılabilmektedir. Bu
    program Web Sitesi olarak yapılmayacak. Masaüstü yazılımı olarak geliştirilecek.

    bi yardım edinde halledelim be şunu azıcık bi ilerleme kaydettim bu esnada kullandığım kodlar

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace WindowsFormsApplication33
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    Graphics grafik;
    int Sayac;
    string CizimModu = null;
    int X1 = 0;
    int Y1 = 0;
    int X2 = 0;
    int Y2 = 0;
    Pen Kalem = new Pen(System.Drawing.Color.Red, 1);
    private void Form1_Load(object sender, EventArgs e)
    {
    grafik = pictureBox1.CreateGraphics();
    }

    private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
    {
    label1.Text = e.X.ToString();
    label2.Text = e.Y.ToString();
    }

    private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
    {
    if (Sayac % 2 == 0)
    {
    X1 = e.X; Y1 = e.Y;
    grafik.DrawLine(Pens.Black, X1 - 5, Y1, X1 + 5, Y1);
    grafik.DrawLine(Pens.Black, X1, Y1 - 5, X1, Y1 + 5);
    Sayac = Sayac + 1;
    }
    else if (Sayac % 2 == 1)
    {
    X2 = e.X; Y2 = e.Y;
    grafik.DrawLine(Pens.Black, X2 - 5, Y2, X2 + 5, Y2);
    grafik.DrawLine(Pens.Black, X2, Y2 - 5, X2, Y2 + 5);

    if (CizimModu == "Line")
    {
    grafik.DrawLine(Kalem, X1, Y1, X2, Y2);

    X1 = X2; Y1 = Y2;
    }
    }
    }

    private void button1_Click(object sender, EventArgs e)
    {
    CizimModu = "Line"; Sayac = 0;
    }
    }
    }







  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.