إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

الرسم في فلاش حزء 2

تقليص
هذا الموضوع مغلق.
X
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • الرسم في فلاش حزء 2



    بسم الله الرحمن الرحيم
    الحمدلله والصلاة والسلام على رسول الله وعلى آله وصحبه أجمعين
    السلام عليكم ورحمة الله وبركاته


    سبق أن تم شرح لكيفية الرسم في فلاش ضمن الرابط التالي :
    http://sites.ienajah.com/vb2/showthread.php?t=29148

    ولنكمل ما بدأناه ونبسط لكم اخوتي الكرام في محاولة لاستيعاب طريقة الرسم والتحكم في نظم الالوان .

    لنبدأ بــــــــــــــــــــــــ

    الرسم الطبيعي

    1 - استدعاء كلاسات احداث الماوس وانشاء نسخة من كائن موفي كليب لنرسم داخله
    كود:
    import flash.events.MouseEvent;
    import flash.events.Event;
    
    
    var drawingLine: MovieClip = new MovieClip();
    addChildAt(drawingLine, 0);
    الاستماع لحدث الماوس عند بداية الضغط والحدث الذي طلبناه = من نوع سطر سمك 10 بكسل ولون بني
    على أن يكون اتجاه السطر نفس اتجاه أو احداثيات الماوس في حالة الحركة Move

    كود:
    function MouseDown(event: MouseEvent): void {
    
    	drawingLine.graphics.lineStyle(10, 0x990000);
    	drawingLine.graphics.moveTo(mouseX, mouseY);
    	stage.addEventListener(MouseEvent.MOUSE_MOVE, MouseMove);
    }
    
    function MouseMove(event: MouseEvent): void {
    	drawingLine.graphics.lineTo(mouseX, mouseY);
    }
    3 - حدث استماع للمسرح Stage في حالة رفع الاصبع عن الماوس = الحدث المطلوب
    حذف حدث الاستماع للرسم والرسم مرتبط طبعا بحركة الماوس Move

    4- أضفت زر clear_btn في المشروع لافراغ أو مسح الرسم
    كود:
    clear_btn.addEventListener(MouseEvent.CLICK, clearScreen);
    
    function clearScreen(event: MouseEvent): void {
    	drawingLine.graphics.clear();
    }
    ==== هذا فيما يتعلق بالرسم العادي على فلاش == يمكن أن تغير اخي في سمك الخط ولونه (10, 0x990000)



    ارسم على الفلاش

    [flash=http://dc22.arabsh.com/uploads/flash/2016/12/23/0d33454b6cf1.swf]WIDTH=700 HEIGHT=500[/flash]


    الرسم المتقدم


    بنفس طريقة الرسم العادي يمكن أن نقوم برسم متقدم بالاستعانة بكلاس flash.filters.GlowFilter

    هذا الكلاس أخي الكريم يضفي على الرسم جمالية من خلال دوال التوهج glow والضبابية blur والشادو shadow الخ ..

    وطبعا كالعادة لانشاء مشروع رسم متقدم نستحضر الكلاسات اللازمة

    1-
    كود:
    import flash.display.Sprite;
    import flash.filters.GlowFilter;
    import flash.events.MouseEvent;
    import flash.events.Event;
    import fl.controls.ColorPicker;
    import fl.events.ColorPickerEvent;
    الكلاسين الاخيرين يخصان كمبونت الكولور بيكر وهي مكون في الفلاش خاص بنظم واختيار الآلوان

    2-
    الاعلان عن متغيرات تخص الالوان وسمك الخط ودرجة التوهج والضبابية
    كود:
    var baseColor = 0xFFFFFF; 
    var glowColor = 0xFF0000; 
    var baseStrength = 15; 
    var glowStrength =10; 
    var glowBlur = 10;
    3-
    انشاء نسخة من كلاس سبرايت لنرسم داخله
    كود:
    var sprite:Sprite = new Sprite();
    addChild(sprite);
    4-
    دالة تجهيز نوع الرسم والقيم المطلوبة
    وفي الدالة مصفوفة لاحتواء بكسلات الجرافيك

    5- حدث استماع للمسرح stage في حالة ضغط الماوس أن يتبع الرسم احداثيات الماوس
    بقيم الللون المطلوب وحذف الجرافيك عند رفع اليد على الماوس

    كود:
    stage.addEventListener(MouseEvent.MOUSE_DOWN, BeginFill);
    function BeginFill(m:MouseEvent) {
        sprite.graphics.lineStyle(baseStrength, baseColor);
        sprite.graphics.moveTo(mouseX, mouseY);
        addEventListener(Event.ENTER_FRAME, loop);
    }
    
    
    stage.addEventListener(MouseEvent.MOUSE_UP, stopFill);
    function stopFill(m:MouseEvent) {
        removeEventListener(Event.ENTER_FRAME, loop);
    }
    
    function loop(e:Event) {
        
        if (mouseX < 600) {
            sprite.graphics.lineTo(mouseX, mouseY);
        }
    }

    أضفت في المشروع نسختين من مكون Componet كولر بيكر Color Picker بسام cp1 و cp2 لاختيار اللون منها وهذا الكود

    كود:
    cp1.addEventListener(ColorPickerEvent.CHANGE, changeHandler1);
    function changeHandler1(event:ColorPickerEvent):void {
        sprite.graphics.clear();
        baseColor = event.target.selectedColor;
    }
    cp2.addEventListener(ColorPickerEvent.CHANGE, changeHandler2);
    function changeHandler2(event:ColorPickerEvent):void {
        glowColor = event.target.selectedColor;
        sprite.graphics.clear();
        updateFilter();
    }
    وأخيرا أضفنا نفس الزر في المشروع السابق للمسح

    كود:
    clear_btn.addEventListener(MouseEvent.CLICK, clear);
    function clear(event:MouseEvent):void
    {
        sprite.graphics.clear();
        updateFilter();
    }
    ارسم على الفلاش وخير بين الالوان

    [flash=http://dc22.arabsh.com/uploads/flash/2016/12/23/0d33454b6cf0.swf]WIDTH=700 HEIGHT=500[/flash]


    ====== يمكن أخي الكريم أن تطبق هذا المشروع على نظام أندرويد بنفس الاكواد وتقدمه لابنك الصغير لتعلم الحروف
    وطبعا يمكن أن تطوره ببعض الصور مثلا أو أصوات حروف الخ ....


    الملف المفتوح في المرفقات


    الملفات المرفقة

  • #2
    ممتاز اخى عزيز فعلا كنا فى أمس الحاج لمثل هذا الموضوع المهم
    فجزاكم الله كل الخير

    تعليق


    • #3
      بسم الله الرحمن الرحيم
      شـكــ وبارك الله فيك ـــرا لك
      . لك مني أجمل تحية .

      تعليق


      • #4
        ما شاء الله
        زادكم الله صحة وبركة

        تعليق


        • #5
          بسم الله الرحمن الرحيم

          بارك الله فيكم جميعا

          تعليق


          • #6
            جزاك الله خيرا أخى عزيز

            ماشاء الله متابعة جميلة للموضوع بارك الله خيرا

            حفظك المولى وزادك الله علما.

            تعليق


            • #7
              بسم الله الرحمن الرحيم

              أشكر لكم هذا الحضور الطيب أخي أبا همام

              تعليق


              • #8
                نفع الله بكم

                تعليق


                • #9
                  يا سلام عليك
                  و الله جد جميل
                  و مدهل سنحاول الافادة من ذلك

                  تعليق


                  • #10
                    السلام عليكم ورحمة الله وبركاته

                    تعليق


                    • #11
                      شكرا جزيلا هل يمكن برمجة زر القلم عند الضغط عليه يكتب وعند الضغط عليه مرة اخرى يتوقف تم زر للتراجع عن الكتابة دون مسح كل

                      تعليق


                      • #12
                        شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .

                        تعليق


                        • #13
                          السلام عليكم ورحمة الله وبركاته
                          شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .

                          تعليق


                          • #14
                            بارك الله فيكم جميعا

                            تعليق

                            مواضيع تهمك

                            تقليص

                            المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 06-08-2025 الساعة 11:33 PM
                            المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 06-04-2025 الساعة 05:29 PM
                            المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 05-31-2025 الساعة 10:07 PM
                            المنتدى: القسم العام نشرت بواسطة: ماريا عبد الله الوقت: 05-30-2025 الساعة 11:48 PM
                            المنتدى: التصنيع والانتاج نشرت بواسطة: HaMooooDi الوقت: 05-30-2025 الساعة 09:36 AM
                            يعمل...
                            X