نمایش نتایج 1 تا 17 از 17

نام تاپیک: کار با تصاوير

  1. #1

    کار با تصاوير

    سلام دوستان عزيز و برنامه نويسان گرامي
    من يه برنامه مي خوام بنويسم که تصوير و شطرنجي کنه و اين قابليت رو داشته باشه که فاصله دو نقطه رو که روي اون مشخص ميکنم به (سانتي متر و پيکسل) بده و مساحت رو مشخص کنه (يک شکل در تصوير) هر کدام از دوستان اگه قسمتي از برنامه رو هم دارن لطف کنن سورس بزارن.
    خيلي واجبه دوستان بشتابيد. !!!!

  2. #2

    نقل قول: کار با تصاوير

    اگه سورس میخواین برین sourceforge یا codeproject یا ...
    اینجا محل یاد گیری .... یکمیشو خودتون بنویسین بعد بگین از اینجا به بعدشو باد نیستم شما یاد بدین ...

  3. #3
    کاربر دائمی آواتار Hossenbor
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    پارس
    پست
    429

    نقل قول: کار با تصاوير

    نقل قول نوشته شده توسط exlord مشاهده تاپیک
    اگه سورس میخواین برین sourceforge یا codeproject یا ...
    اینجا محل یاد گیری .... یکمیشو خودتون بنویسین بعد بگین از اینجا به بعدشو باد نیستم شما یاد بدین ...
    سلام دوست عزیز ما ابتدایی ها رو هم در نظر بگیرید اگر برای یکی کد اماده باشه برای ما جنبه اموزشی باشه چرا این سایت خودش مرجع کد نباشه تو سایت قسمت اوپن سورس هم داریم اگه سخنم تند بود به بزرگی خودتون ببخشید

  4. #4

    نقل قول: کار با تصاوير

    از دوستان عزيز exlord و Hossenbor
    متشکرم من هم با دوست عزيز hossenbor موافقم اگه بتونيد هر کدام يه قسمت از برنامه مورد نظر هم بگذاريد کمک بزرگي کرديد.

  5. #5

    نقل قول: کار با تصاوير

    يعني هيچکس نمي تونه راهنمايي کنه؟

  6. #6

    نقل قول: کار با تصاوير

    سلام
    فقط یه قسمت رو میخوای شطرنجی بکنی یا کل عکس رو؟ در مورد پیدا کردن فاصله بین دو نقطه (بر حسب پیکسل) میتونی تو هر سری کلیک (روی نقاط مورد نظرت) موقعیت اون نقاط رو بگیری و با استفاده از فرمول ریاضی فاصله بین دو نقطه با استفاده از x و y فاصله رو بر حسب پیکسل حساب بکنی. در مورد فاصله بر حسب سانتی متر فکر کنم به همین سادگی نشه فاصله رو پیدا کرد، چون به یه معیار هم احتیاج داری. اگه تونستم برات نمونه کد میذارم

    پ.ن: این کد رو الآن تست کردم، فاصله بین دو نقطه از picturebox که روش کلیک کردی رو (به پیکسل) روی label نشون میده
    int frst = 0;
    int x1 = 0, x2 = 0, y1 = 0, y2 = 0;
    private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
    {
    if (frst == 0)
    {
    x1 = e.X;
    y1 = e.Y;
    frst++;
    }
    else
    {
    x2 = e.X;
    y2 = e.Y;
    frst = 0;
    label1.Text = (Math.Sqrt(Math.Pow(x2 - x1, 2) + Math.Pow(y2 - y1, 2))).ToString();
    x1 = x2 = y1 = y2 = 0;
    }
    }
    آخرین ویرایش به وسیله unknown.unforgiven : دوشنبه 23 اسفند 1389 در 17:56 عصر

  7. #7

    نقل قول: کار با تصاوير

    ممنونم از راهنمايي تون ميخوام کل تصوير شطرنجي بشه اگه باز هم نمونه کد بگذاري ممنون ميشم.

  8. #8

    نقل قول: کار با تصاوير

    دوست عزيز unknown.unforgiven
    من هنوز منتظر هستم.

  9. #9

    نقل قول: کار با تصاوير

    دارم روش کار میکنم (تیکه ی شطرنجی)، هنوز به نتیجه نرسیدم. یه سولام واسم مطرح شد اینه که چه جوری میخوای شطرنجی بکنی؟ عین اون تیکه از فیلما که صورت طرف رو pixelate میکنن یا شطرنجی سیاه سفید؟ اگه شطرنجی سیاه سفید میخوای، میتونی با 2 تا for کل تصویر رو شطرنجی سیاه سفید بکنی اما اگه بخوای تصویر رو pixelate بکنی باید رزولوشن عکس رو بیاری پایین و با عکس اورجینال جایگزینش بکنی (منظورم یه چیز تو مایه های بزرگنمایی در حد زیاده که نمیذاره کیفیت تصویر باقی بمونه و به حالت pixelated در میاد). این الگوریتمشه، من دارم رو این موضوع pixelate کردن کار میکنم. حالا اگه خودت تونستی زودتر بنویسیش اینجا هم بذار که من و امثال من هم بتونن ازش استفاده بکنن

  10. #10

    نقل قول: کار با تصاوير

    خيلي ممنون که پيگير هستيد من ميخوام خط هايي به رنگ مشکي به صورت افقي و عمودي که همديگر رو قطع ميکنن روي تصوير بيوفته(به صورت مربع ، مربع) که تصوير سر جاي خودش هست فقط خط هاي مزبور روي آنها افتاده.
    آخرین ویرایش به وسیله shahnam sha : سه شنبه 24 اسفند 1389 در 13:14 عصر

  11. #11

    نقل قول: کار با تصاوير

    واسه تیکه ی pixelate کردن این کد رو نوشتم. ببین به کارت میاد یا نه. فقط به 2 تا نکته توجه کن
    1. فرض کردم یه picturebox داری و توش اون عکسی که میخوای pixelate بکنیش load شده باشه
    2. با تغییر مقدار step مقدار pixelate شدن عکس فرق میکنه
    کد:
    int step = 10;
    Bitmap myImage = (Bitmap)pictureBox1.Image;
    for (int i = step; i < myImage.Width; i += (2 * step))
    {
    for (int j = step; j < myImage.Height; j += (2 * step))
    {
    for (int x = i - step; ((x <= (i + step)) && x < myImage.Width); x++)
    {
    for (int y = j - step; ((y <= (j + step)) && y < myImage.Height); y++)
    {
    myImage.SetPixel(x, y, myImage.GetPixel(i, j));
    }
    }
    }
    }
    pictureBox1.Image = myImage;

  12. #12

    نقل قول: کار با تصاوير

    خيلي ممنون همانطور که گفتيد کد بالا به درستي و خيلي خوب تصوير رو pixelate ميکنه ولي من همانطور که در قسمت 10 گفتم مي خوام به صورت خطوط افقي و عمودي خطوط روي تصوير بياد و تصوير به همان صورت که هست باقي بمونه اگه اين کد رو هم بتونيد بنويسيد ممنون ميشم.

  13. #13

    نقل قول: کار با تصاوير

    خيلي ممنون همانطور که گفتيد کد بالا به درستي و خيلي خوب تصوير رو pixelate ميکنه ولي من همانطور که در قسمت 10 گفتم مي خوام به صورت خطوط افقي و عمودي خطوط روي تصوير بياد و تصوير به همان صورت که هست باقي بمونه اگه اين کد رو هم بتونيد بنويسيد ممنون ميشم.

  14. #14

    نقل قول: کار با تصاوير

    دیگه اون تیکه رو خودت بنویس، واسه این کار دیگه احتیاج نیست از bitmap استفاده بکنی. از نمونه کد زیر میتونی واسه کارت کمک بگیری
    Graphics graphic = pictureBox1.CreateGraphics();
    SolidBrush blackBrush = new SolidBrush(Color.Black);
    int x = 0;
    int y = 0;
    int width = 200;
    int height = 200;
    graphic.FillRectangle(blackBrush, x, y, width, height);

  15. #15

    نقل قول: کار با تصاوير

    متشکر که سورس گذاشتيد ولي من اين کد رو تو ایونت کليک یک باتن گذاشتم ولي کار نکرد کار خاصي بايد انجام بدم حتي تو ایونت paint ,picturebox هم گذاشتم باز هم کار نکرد لطفا بگيد براي اينکه تو picturebox نمايش داده بشه بايد چيکار کرد.

  16. #16

    نقل قول: کار با تصاوير

    باز هم متشکر کد کار کرد ولي يک مستطيل رسم ميشه من مي خوام خط هاي افقي و عمودي رسم شه البته فکر کنم فهميدم چيکار کنم درست که شد در همين تاپيک ميزارم.

  17. #17

    نقل قول: کار با تصاوير

    سلام من کد شطرنجي کردن با خطوط افقي و عمودي رو نوشتم که در زير ملاحظه ميکنيد :

                int NumWidth = 0, NumHeight = 0,CountHor=0,CountVer=0;
    int SetLine = 0;
    NumHeight = pictureBox1.Size.Height;
    NumWidth = pictureBox1.Size.Width;

    CountHor = NumHeight / 20;
    CountVer = NumWidth / 20;

    Graphics graphic = pictureBox1.CreateGraphics();
    Pen aPen = new Pen(Brushes.Black, 2);

    for (int i = 0; i <= CountHor + 1; i++)
    {
    graphic.DrawLine(aPen, SetLine, 0, SetLine, NumHeight);
    SetLine = SetLine + 20;
    }
    SetLine = 0;
    for (int i = 0; i <= CountVer + 1; i++)
    {
    graphic.DrawLine(aPen, 0, SetLine, NumWidth, SetLine);
    SetLine = SetLine + 20;
    }

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •