/
  • مشکا در ترسیم

  • صفحه‌ها (2):
  • ارسال پاسخ   امتیاز موضوع:
    • 0 رأی - میانگین امیتازات: 0
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی مشکا در ترسیم
    نویسنده پیام
    php آفلاین
    hossein
    ****

    ارسال‌ها: 612
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #1
    مشکا در ترسیم
    تو صفحه یه div اصلی وجود داره که برای ترسیم استفاده میشه , افراد می تونن div هایی رو به شکل چهار گوش در سر تاسر این div ترسیم کنن .(مشخصات div های داخلی بر اساس Top وLeft شون از بالای صفحه تنظیم میشه ) . بعد از ترسیم این صفحه توسط AJAX در بانک ذخیره می شود .

    هنگام نمایش قرار است چند تا از این صفحات ذخیره شده در زیر هم نمایش داده شوند . مشکل اینجاست که موقع کشیدن چهارگوشها مختصاتشون رو نسبت به دو گوشه صفحه ذخیره کردیم و حالا د نمایش به مشکل بر می خورم.
    راهی برای ذخیره مختصات نسبت به دو گوشه div پدر وجود داره ؟
    __________________________________________________________________________
    ۱۳۸۸ اسفند ۲۸ ۱۰:۴۶ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,697
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #2
    RE: مشکا در ترسیم
    راحته‌ که مثلا‌ x نصبت‌ به div پدر‌ میشه x خود‌ المنت‌‌ مهنای x المنت پدر
    ۱۳۸۸ اسفند ۲۸ ۰۲:۲۳ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : php
    php آفلاین
    hossein
    ****

    ارسال‌ها: 612
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #3
    RE: مشکا در ترسیم
    اینکار قبل از ذخیره راحت هست ولی وقتی قرار باشه نمایش بدیم باید تمام المنت ها رو از جدا کنیم و به اندازه div اصلی قبلی به اون اضافه کنیم .

    راهی نیست که بشه اندازه top و left رو براساس پدر تگ تعیین کرد یعنی مختصات 0و0 بشه گوشه تگ پدر .
    مشکلم حل شد.

    با position:relative با تعیین left , top مقدار ان نسبت به تگ پدر تعیین می شود و نسبت به کل صفحه .
    __________________________________________________________________________
    (آخرین ویرایش در این ارسال: ۱۳۸۸ اسفند ۲۸ ۰۵:۱۶ عصر، توسط php.)
    ۱۳۸۸ اسفند ۲۸ ۰۴:۳۵ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    php آفلاین
    hossein
    ****

    ارسال‌ها: 612
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #4
    RE: مشکا در ترسیم
    نه هنوز مشکلم سر جاشه . خیلی مهمه هر کی می تونه کمک کنه .
    بهتره یه توضیح کامل بدم .

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

    برای اینکه اشکال قابل جابجایی در صفحه باشند از position:absolute برای اشکال چهارگوش استفاده کردم تا بتونم به اونها top ,left بدم اما با position:absolute موقعیت شی نسبت به گوشه های صفحه نمایش سنجیده میشه و top , left بر این اساس سنجیده میشه پس با تغییر rersoulation صفحه یا تغییر مکان نمایش همه چی بهم میریزه پس مجبور شدم از position:relative بجای position:absolute استفاده کنم با این مار موقعیت top, left شی نسبت به موقعیت پدرش بدست می یاد و دیگه در موقع نمایش مشکل تغییر سایز صفحه ویا تغییر موقعیت نمایش رو نداریم اما مشکلی که این روش داره اگر تعداد اشیاء افزایش پیدا کنه اندازه شی قبلی نیز در موقعیت top ,left شی جدید تاثیر گذار خواهد بود و این به این معنی است که اگر دو شی با انداره 100px و top ,left برابر صفر داشته باشیم در ظاهر باید دو شی روی هم قرار گیرند اما در عمل این دو در زیر هم قرار می گیرند و این به این معنیست که اندازه شی قبلی در موقعیت شی جدید تاثیر دارد و این کار را برای پیاده سازی حالت های مختلف سخت می کند .
    حالت هایی مانند جابجایی و یا کشیدن شی با حرکت موس .

    کسی در این مورد می تونه کمک کنه که چطور میشه موقعیت شی رو در حالت دوم برابر با موقعیت موس قرار داد در حالتی که چند شی با position:relative در صفحه وجود دارد .
    __________________________________________________________________________
    ۱۳۸۹ فروردين ۱ ۰۵:۴۲ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,697
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #5
    RE: مشکا در ترسیم
    بهتره‌ از svg یا canvas استفاده کنی
    ۱۳۸۹ فروردين ۱ ۰۷:۵۳ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : php
    php آفلاین
    hossein
    ****

    ارسال‌ها: 612
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #6
    RE: مشکا در ترسیم
    مشکل من تو کشیدن اشکال نیست چون همه اشکال مستطیل یا مربع هستن مشکل تو جابجایی اونها درصفحه و ذخیره موقعیت اونها برای نمایش در ایندست .
    چون در کل برای اینکه هر تگی موقعیتش نسبت به موقعیت پدرش تعیین بشه باید position:relative باشه تا با تغییر اندازه صفحه در کامپیوتر های مختلف موقعیت نمایشی شی در صفحه ثابت باشه .

    ولی مشکا در جابجایی شی هنگام کشیدن شی توسط موس هست .
    که چطوری با جابجایی شی , شی در موقعیت موس جدید موس قرار بگیره .
    __________________________________________________________________________
    ۱۳۸۹ فروردين ۲ ۱۲:۳۷ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,697
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #7
    RE: مشکا در ترسیم
    من این رو اول بهت گفتم. موقعیت روی absolute قرار می گیره. حالا همه نسبت به گوشه در نظر می گیرن. حالا چرا می خوای از روی پدر حساب کنی رو من نمی دونم. مگه مشخصات پدر هم ذخیره نمیشه؟
    ۱۳۸۹ فروردين ۲ ۰۱:۳۴ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : php
    php آفلاین
    hossein
    ****

    ارسال‌ها: 612
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #8
    RE: مشکا در ترسیم
    چون تمام اجزای صفحه div معمولی هستن فقط اینا هستن که position براشون تعریف شده .
    موقع ترسیم با absoluteبه مشکل بر نمی خوریم ولی اموقع نمایش اگر مثلا صفحه ای که باید نمایش داده بشه ظاهرش با صفحه طراحی فرق داشته باشه و یا اندازه صفحه جابجا بشه که صد درصد در مانیتور های معمولی با lcd های جدید فرق می کنه موقعیت نمایش عوض میشه و اون وقت هست که همه چی بهم میریزه . درضمن پدرشون هم یه div معمولی هست که اگه قرار باشه چند ت از این پدرا کنار هم قرار بگیرند امکان پذیر باشه .
    __________________________________________________________________________
    ۱۳۸۹ فروردين ۲ ۰۸:۵۸ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,697
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #9
    RE: مشکا در ترسیم
    با حرفهای تو من دلیلی برای مشکل نمی بینم مگر اینکه توی راست به جپ مشکل داری که واسه این هم می تونی به جای left از right استفاده کنی.
    ۱۳۸۹ فروردين ۲ ۱۱:۳۷ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : php
    php آفلاین
    hossein
    ****

    ارسال‌ها: 612
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #10
    RE: مشکا در ترسیم
    مشکلی به این بزرگی چطور مشکلی نمی بینی .
    فرض کن طرف میاد یه چیزی طراحی می کنه حالا این رو ذخیره و یک کاربر معمولی وارد سیستم میشه تا این رو ببینه حالا کاربر از رزولیشن دیگه ای در سیستم خودش استفده می کنه و یا اندازه صفحه نمایشش متفاوت هست حالا همه ظاهر صفحه از جمله منو ها و بغییه جوانب کار هر کدام در جای خودشون به نمایش در میان اما این موارد که به نسبت فاصله از گوشه ها در صفحه قرار می کیرند موقعیتشان تغییر می کند و ممکن است بر روی موارد دیگر صفحه قرار گیرند و کلا اون خروجی که ما مد نظرمون هست رو ندهد .
    اما اگر موقعیت رو نسبت به پدرشون در صفحه تظیم کنیم چون اندازه پدرشون همیشه ثابت هست با تغییر سایز صفحه نمایش هم موقعیت خودشون رو حفظ می کنند .

    مشکل رو از طریق css نتونستم حل کنم ولی با یکمی پیجیده تر کردن کد های جاوا اسکریپت مشکل حل شد .
    __________________________________________________________________________
    ۱۳۸۹ فروردين ۲ ۰۷:۵۸ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    « قدیمی تر | تازه‌ تر »

  • صفحه‌ها (2):
  • ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS