ايران ويج

نسخه‌ی کامل: روشن کردن پیکسل در PictureBox
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
سلام دوستان عزیز
من می خوام یک سری پیکسل رو روی Picturebox نمایش بدم.
اما مشکل اینجاست که وقتی تابع رو فراخوانی می کنم عمل نمیکنه. ( از این تابع استفاده کردم)


کد:
Addhander Picturebox1.Paint, AddressOf PictureBox1_Paint


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

چه کار باید انجام بدم؟؟؟؟
(۲۳-مهر-۱۳۸۹, ۱۲:۲۴:۱۶)toopdanlod نوشته است: [ -> ]سلام دوستان عزیز
من می خوام یک سری پیکسل رو روی Picturebox نمایش بدم.
اما مشکل اینجاست که وقتی تابع رو فراخوانی می کنم عمل نمیکنه. ( از این تابع استفاده کردم)


کد:
Addhander Picturebox1.Paint, AddressOf PictureBox1_Paint


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

چه کار باید انجام بدم؟؟؟؟

سلام
اگه می خواین از تابع های آماده ی فریم ورک استفاده کنید:

در قسمت بالا ی کد(همان using ها)
کد:
using System.Drawing;

بعد مثلا این کد:
کد:
Dim bmp As Bitmap
bmp = New Bitmap(PictureBox1.Image)
bmp.SetPixel(5, 5, Color.Red)

PictureBox1.Image = bmp

اگر می خواین تعداد زیادی از پیکسل ها رو بخونین و روشون تغییراتی اعمال کنید بهتره از روش Scan0 استفاده کنید.

موفق باشین.
دوست عزیز این کدی که گفتید رو تست کردم، به درد برنامه من نمی خوره، سرعت برنامه رو خیلی کاهش میده.
این روش Scan که گفتید، میشه بیشتر توضیح بدید؟؟؟/

حجم عکسایی که من توی برنامم استفاده می کنم بالای 10مگابایت هستش(نقشه شهرها و کشور) برای همین یه روشی که سرعت برنامه رو زیاد کاهش نده اگه بگید ممنون میشم.
و اینکه من می خوام مثلا 130 تا پیکسل رو نمایش بدم و بین این پیکسل ها رو با line خط بکشم.
اگه اینم بگید ممنون میشم
(۲۳-مهر-۱۳۸۹, ۱۵:۰۸:۱۸)toopdanlod نوشته است: [ -> ]دوست عزیز این کدی که گفتید رو تست کردم، به درد برنامه من نمی خوره، سرعت برنامه رو خیلی کاهش میده.
این روش Scan که گفتید، میشه بیشتر توضیح بدید؟؟؟/

حجم عکسایی که من توی برنامم استفاده می کنم بالای 10مگابایت هستش(نقشه شهرها و کشور) برای همین یه روشی که سرعت برنامه رو زیاد کاهش نده اگه بگید ممنون میشم.
و اینکه من می خوام مثلا 130 تا پیکسل رو نمایش بدم و بین این پیکسل ها رو با line خط بکشم.
اگه اینم بگید ممنون میشم

قبل از توضیح یه سوال داشتم: عمق رنگ عکس های شما چقدره؟
تصویرتون 24 بیت هست ؟
بله دوست عزی عمقش 24 بیت.
خیلی ضروریه این کار.
اول می خواستم که با تابع SetPixel این کار ور انجام بدم، که متوجه شدم نمیشه به خاطر اینکه نمی تونستم توی تابع اندازه پیکسل رو مشخص کنم.

من می خوام با یه اندازه مشخص مثلا با اندازه 20 پیکسل ها رو روشن کنم
(۲۳-مهر-۱۳۸۹, ۱۸:۴۱:۵۶)toopdanlod نوشته است: [ -> ]بله دوست عزی عمقش 24 بیت.
خیلی ضروریه این کار.
اول می خواستم که با تابع SetPixel این کار ور انجام بدم، که متوجه شدم نمیشه به خاطر اینکه نمی تونستم توی تابع اندازه پیکسل رو مشخص کنم.

من می خوام با یه اندازه مشخص مثلا با اندازه 20 پیکسل ها رو روشن کنم

http://www.iranled.com/forum/showthread.php?tid=18021

ضمیمه ی پست اولی رو دانلود کنید بغلش یه برنامه هست.

یه نگاهی بهش بندازید.

یکم دقیق تر میگید که می خواین چیکار کنید؟
از پست 3 و 5 نمی تونم نتیجه بگیرم که می خواین چیکار کنید.


توی خود pdf هم یه توضیحاتی دادم.
حتما با Google map کار کردین؟؟؟؟؟؟؟!!!!!!!!!!!!

وقتی 2 موقعیت رو انتخاب می کنی، با خط رسم می کنه بر ات.
این برنامه هم شبه همون کارو انجام میده.
این برنامه یک سری اطلاعات که دستگاه GPS ییی که درست کردم میگیره و توی نقشه نشون میده از کدوم مسیر رفته.

من لینکی نمیبینم که به تاپیکی که گفتی برم
(۲۳-مهر-۱۳۸۹, ۱۸:۵۹:۱۸)toopdanlod نوشته است: [ -> ]حتما با Google map کار کردین؟؟؟؟؟؟؟!!!!!!!!!!!!

وقتی 2 موقعیت رو انتخاب می کنی، با خط رسم می کنه بر ات.
این برنامه هم شبه همون کارو انجام میده.
این برنامه یک سری اطلاعات که دستگاه GPS ییی که درست کردم میگیره و توی نقشه نشون میده از کدوم مسیر رفته.

من لینکی نمیبینم که به تاپیکی که گفتی برم

ویرایش کردمش

یه سوال دیگه: چرا از line استفاده نمی کنید؟(مال خود فریم ورک)
از line هم استفاده می کنم اما، چون جاده ها و خیابون ها پیچ و خم داره همش نمیشه از line استفاده کرد.
اگه بشه به Line پیچ و تاب داد، بهترین روش هست اما نتونستم این کار و بکنم.

تاپیک هم دیدم دستت مرسی. الان جاییم برم خونه می خونمش
دوست عزیز مطلبتو خوندم، زیاد با کاری که من میخوام بکنم مرتبط نبود.

نمیشه به این کدی که اول گفتید، اندازه هم داد؟
سلام
اگه منظورتون از "نقطه با اندازه" یه دایره هسته. از دستور FillEllipse یا FillPie میتونید استفاده کنید.

برای خط کج و کور هم میتونید از سه تابع DrawLines یا DrawBeziers یا DrawCurve بسته به نیازتون استفاده کنید. نکته:
- وقتی تعداد خطوط برای DrawLines زیاد باشه دیگه شکسته نمیشه (مثال رو ببین)
- DrawBeziers مثل همون خط منحنی کشیدن توی paint میمونه کارش => میزان خم بر اساس دو نقطه میانی تنظیم میشه.
- با پارامتر tension توی تابع DrawCurve میتونید میزان شکستگی رو مشخص کنید.

اینم مثال - نمودار سینوس 0-360:
ردیف اول تا سوم به ترتیب از توابع DrawLines (مشکی) و DrawBeziers (آبی) و DrawCurve (قرمز) استفاده کردم.
نمودار سمت چپ با 360 نقطه کشیده شده و سمت راست با 18 نقطه. ( مقدار tension درDrawCurve =ه0.5 )

[تصویر:  b2004314aa49d95302179246148e0326.png]
صفحه‌ها: 1 2