افزونه 1 سؤال: رویداد بزرگنمایی در نرم افزار تحت اندروید که با لمس صفحه تاچ اتفاق بیفتد

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

Fanous

Well-Known Member
سلام
در گوشی و برخی لوازم لمسی برای بزرگنمایی با لمس دو قسمت صفحه در حالی که با انگشت فاصله بین این دو نقطه بیشتر میشود رویداد بزرگنمایی اتفاق می افتد. در فلش این روبداد تحت چه عنوانی تعریف می شود. آیا با MouseEvent می شود تعریفش کرد یا اصلا چیز دیگری است مثلا رویداد تاچ هم داریم. لطفا کلاس آن را بفرمایید. متشکرم

سلام
برای زوم از این کد استفاده کنین :
کد:
Multitouch.inputMode = MultitouchInputMode.GESTURE;
my_movieclip.addEventListener(TransformGestureEvent.GESTURE_ZOOM , onZoom);
function onZoom (e:TransformGestureEvent):void{
my_movieclip.scaleX *= e.scaleX;
my_movieclip.scaleY *= e.scaleY; 
}
]
همچنین می تونین این صفحه رو مطالعه کنین :
http://www.republicofcode.com/tutorials/flash/as3pinchzoom/

ه
 
متشکرم ولی موقع بزرگنمایی اگر حرکت عمودی یا افقی باشد و کلا، تناسب اضلاع در بزرگنمایی حفظ نمیشه و شکلم دفرمه میشه مثلا در طول یا عرض کارم کشیده میشه. کدوم پارامتر را باید تغییر بدم؟
 

flash.developer

Active Member
فکر کنم شما اصلاَ‌ به کد دقت نکردید
PHP:
my_movieclip.scaleX *= e.scaleX;
my_movieclip.scaleY *= e.scaleX;
 
سلام
من کد را تست کردم و در گوشی امتحان کردم کار میکنه ولی تناسب پهنا و ارتفاع در اسکیل رعایت نمیشه و به هم میریزه. از ظاهر کد مقدار تغییر اسکیل x و y باید یه اندازه باشه ولی در عمل اینطوری نیست. مختصری میتونید توضیح بدین که مکانیزم کار مولتی تاچ چگونه است و از کجا متوجه میشه که باید چقدر بزرگنمایی اتفاق بیفته؟ و در چه سمتی؟
 

Fanous

Well-Known Member
سلام
من کد را تست کردم و در گوشی امتحان کردم کار میکنه ولی تناسب پهنا و ارتفاع در اسکیل رعایت نمیشه و به هم میریزه. از ظاهر کد مقدار تغییر اسکیل x و y باید یه اندازه باشه ولی در عمل اینطوری نیست. مختصری میتونید توضیح بدین که مکانیزم کار مولتی تاچ چگونه است و از کجا متوجه میشه که باید چقدر بزرگنمایی اتفاق بیفته؟ و در چه سمتی؟


برای اینکه تناسب کار حفظ بشه باید هر دو پارامتر .scaleX و .scaleY رو به یک اندازه تغییر بدیم
مثلا میشه هردو رو فقط به اندازه e.scaleX تغییر داد :
دقت کنید!اسکیل x به اندازه e.scaleX تغییر کرده همینطور اسکیل y
کد:
my_movieclip.scaleX *= e.scaleX;
my_movieclip.scaleY *= e.scaleX;

این نکته رو هم اضافه کنم که در این روش بزرگنمایی حول نقطه رجیستر مووی کلیپ اتفاق میفته نه حول نقطه ای که مرکز 2 انگشت ماست !
 
آخرین ویرایش:
سلام
ببخشید من اشتباها کد را به شکل زیر وارد کردم و شاید علت مشکل بالای من همین بوده باشد از راهنمایی تان بسیار ممنونم.
my_movieclip.scaleX *= e.scaleX;
my_movieclip.scaleY *= e.scaleY;
 

Fanous

Well-Known Member
سلام
ببخشید من اشتباها کد را به شکل زیر وارد کردم و شاید علت مشکل بالای من همین بوده باشد از راهنمایی تان بسیار ممنونم.
my_movieclip.scaleX *= e.scaleX;
my_movieclip.scaleY *= e.scaleY;

شما اشتباه نکرده بودین
کدی که من داده بودم به همین شکل بوده
خواستم نشون بدم که میشه هم در جهت x و هم در جهت y کار کرد
موفق باشین
 

fanoosi

New Member
سلام دوستان
به کمک شما تونستم رویداد زوم رو انجام بدم ولی وقتی موی کلیپ خیلی بزرگ میشه به کمک درگ نمی تونم همه اونو ببینم.فقط قسمت محدودی از او ن رو با درگ میتونم ببینم
چیکار باید بکنم؟
 

Fanous

Well-Known Member
سلام دوستان
به کمک شما تونستم رویداد زوم رو انجام بدم ولی وقتی موی کلیپ خیلی بزرگ میشه به کمک درگ نمی تونم همه اونو ببینم.فقط قسمت محدودی از او ن رو با درگ میتونم ببینم
چیکار باید بکنم؟

سلام
محدوده درگ شما باید متغیر باشه ، یعنی نباید این محدوده رو با عدد مشخص کنین
واسه گوشه های محدوده درگ یک متغیر در نظر بگیرین و با توجه به ابعاد مووی کلیپ که با عمل زوم ، کوچیک و بزرگ میشه ، اون متغیر رو هم تغییر بدین
 

fanoosi

New Member
سلام
با تشکر از توجه شما
وافعیتش از مطالبی که فرمودین چیزی دسگیرم نشد یعنی اونقدا سواد اکشنیمون زیاد نیس
اگه ممکنه با یه مثال توضیح بدین
ممنون
 

Fanous

Well-Known Member
سلام
با تشکر از توجه شما
وافعیتش از مطالبی که فرمودین چیزی دسگیرم نشد یعنی اونقدا سواد اکشنیمون زیاد نیس
اگه ممکنه با یه مثال توضیح بدین
ممنون

سلام
شما برای درگ ابتدا یک محدوده مشخص میکنین، مثلا از نقطه 10و10 تا 300و300
یعنی نقطه رجیستر مووی کلیپ شما می تونه توی این محدوده مستطیل شکل جابجا بشه
حالا اگر شما مووی کلیپ رو بزرگ کنین و تغییری در محدوده درگ ایجاد نکنین ، نقطه رجیستر مووی کلیپ توی همون محدوده قبلی فقط می تونه جابجا بشه و وقتی به مرز اون محدوده برسه دیگه جابجا نمیشه و شما نمی تونین تمام تصویر رو ببینین
پس باید حین بزرگ کردن مووی کلیپ ، محدوده درگ هم تغییر کنه
مثلا اگه بعد از بزرگ نمایی 100 پیکسل به طول مووی کلیپ افزوده بشه ، محدوده درگ هم باید 100 پیکسل بزرگ تر بشه و مثلا بشه -40و10 تا 350 و 300
مختصات x یک سمت 50 تا کم شده و سمت دیگه 50 تا اضافه شده
در حالت اول مووی کلیپ می تونست از 10 تا 300 جابجا بشه ولی بعد از بزرگنمایی می تونه از -40 تا 350 جابجا بشه
 

fanoosi

New Member
با تشکر مجدد
نمونه ای هست که بتونم از اون استفاده کنم ؟
در ضمن من میخوام موقع زوم همه استیج با همه محتویات بزرگ بشه
یه جا دیدم نوشته بودند که اجزا رو به موی کلیپ لینک کنین.
یعنی چه؟
یعنی همه محتویات گروپ بشند؟
 

جدیدترین ارسال ها

بالا