اذهب الي المحتوي
أوفيسنا

تدوير صورة بمقدار قيمة معينة من الدرجات


الردود الموصى بها

السلام عليكم ورحمة الله وبركاته ، أخواني وأساتذتي ومعلمينا الأفاضل ،

هل من الممكن تحقيق الهدف بأن يتم تدوير صورة معينة عن طريق تحديد زاوية الدوران ؟

هذه صورة توضيحية للمطلوب ، ومرفق معها مثال للتطبيق عليه .

 

Request.png.2d8b0f920286663cad93c207a401d36b.png

 

Rotate.accdb

رابط هذا التعليق
شارك

وعليكم السلام ورحمة الله وبركاته باش مهندس @Foksh 🙂 

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

ولكن يتبادر في ذهني هذه البدائل :

1 - تصميم عدة صور ( أسهم ) بزوايا مختلفة وميلان مختلف ، وعند كل نتيجة تستدعي الصورة المناسبة . image.png.6ecea5a9e93216a3bf6cf6fbaec78dca.png

2- تستعيض عن صورة السهم بأداة الخط المتاحة من ضمن أدوات الأكسس ولكنها بدون رأس مدبب (السهم) image.png.1476e31f852fee65282e210916614bfa.png

وهذين الحلين تطبيقهما يسير بعون الله 🙂 

  • Like 1
رابط هذا التعليق
شارك

3 ساعات مضت, Moosak said:

وعليكم السلام ورحمة الله وبركاته باش مهندس @Foksh 🙂 

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

ولكن يتبادر في ذهني هذه البدائل :

1 - تصميم عدة صور ( أسهم ) بزوايا مختلفة وميلان مختلف ، وعند كل نتيجة تستدعي الصورة المناسبة . image.png.6ecea5a9e93216a3bf6cf6fbaec78dca.png

2- تستعيض عن صورة السهم بأداة الخط المتاحة من ضمن أدوات الأكسس ولكنها بدون رأس مدبب (السهم) image.png.1476e31f852fee65282e210916614bfa.png

وهذين الحلين تطبيقهما يسير بعون الله 🙂 

أهلاً بأستاذنا الكبير @Moosak ، بارك الله فيك على الإستجابة السريعة 🥰 .

أنا أعلم أن اكسيس لا يوفر هذه الخاصية ، ولكن تبادر لذهني تنفيذ الفكرة بشكل برمجي إن كان ممكناً .

كفكرة عقارب الساعة مثلاً أنها تدور حول مركز محدد 😉 .

 

اما عند تنفيذ الفكرة الأولى التي ذكرتها فهنا سأحتاج الى قرابة الـ 360 صورة سهم 🥺 .

واعتقد ان العمر قد لا يتسع لهذا الوقت في إنشائها وضبطها 😁 .

تم تعديل بواسطه Foksh
  • Like 1
رابط هذا التعليق
شارك

السلام عليكم

القريب لطلبك هو الاستفادة من الاكواد الخاصة بالساعة .. حصرا عقرب الثواني فقط .. واستبدال المصفوفة في المتغير بدلا من ( 0 الى 60 ) الى ( 0 الى 360 )

وبدلا من حدث التايمر (التاريخ والوقت) يكون قيمة ثابتة عند النقر

اذكر اني محتفظ بمثال للساعة ولكن جهازي بعيد ، ومؤكد لو بحثت عنه هنا ستجده

 

 

  • Like 3
رابط هذا التعليق
شارك

6 دقائق مضت, ابوخليل said:

السلام عليكم

القريب لطلبك هو الاستفادة من الاكواد الخاصة بالساعة .. حصرا عقرب الثواني فقط .. واستبدال المصفوفة في المتغير بدلا من ( 0 الى 60 ) الى ( 0 الى 360 )

وبدلا من حدث التايمر (التاريخ والوقت) يكون قيمة ثابتة عند النقر

اذكر اني محتفظ بمثال للساعة ولكن جهازي بعيد ، ومؤكد لو بحثت عنه هنا ستجده

 

 

وعليكم السلام ورحمة الله وبركاته ،،

أهلاً بصاحب الأفكار العبقرية 😀 ، حمداً لله على سلامتك معلمي الفاضل @ابوخليل . والله ما تطرقت للتشبيه في ردي على الأستاذ @Moosak إلا من وحي هذه الفكرة الخاصة من مثال الساعة .

سأجرب وأخبركم بالنتيجة 🤗 

  • Like 1
رابط هذا التعليق
شارك

1 ساعه مضت, Foksh said:

ما عند تنفيذ الفكرة الأولى التي ذكرتها فهنا سأحتاج الى قرابة الـ 360 صورة سهم 🥺 .
واعتقد ان العمر قد لا يتسع لهذا الوقت في إنشائها وضبطها 😁

الحين مع البرمجة صار إنتاج 360 صورة ما ياخذ ثواني 😄

عليك بالفكرة الثانية إذا .. وسنحتاج إلى صورة عداد وخط واحد فقط إذا عرفنا (فهمنا) الخوارزمية اللي على أساسها يدور العقرب . 🙂 

تصور للنتيجة :

image.png.62da6639c2a7c06f746cb5b93a0981b5.png

  • Like 4
رابط هذا التعليق
شارك

13 دقائق مضت, Moosak said:

الحين مع البرمجة صار إنتاج 360 صورة ما ياخذ ثواني 😄

الفكرة ليست في انتاج الصور الـ 360 :biggrin: .. الفكرة في مساحة النموذج بعد إدراج الصور .

 

أما الفكرة الثانية فهي ما ابحث عنه ؛ وبدعمكم وافكاركم وتوجيهاتكم سنتوصل الى حل بإذن الله :yes:

  • Like 3
رابط هذا التعليق
شارك

4 دقائق مضت, Moosak said:

وهذه مغامرتي وتجربتي بعد العديد من المحاولات 😊

 

image.gif.e0c7db954ffb7c3720ca347863230216.gif

‏‏Meter -Moosak _ Final.accdb 576 kB · 0 downloads

leonardo-dicaprio-clapping.gif

-5-12-2024.png.e7f2884d2ed3962430668bdba501215c.png

 

مجهود رائع جداً ولا شك فيه ..

ولكن ماذا لو كانت الدرجة أكبر من 160 !!!!

  • Like 1
رابط هذا التعليق
شارك

 

 

انا اقتربت من الانتهاء من الفكرة التي خطرت لي استنباطاً من فكرة معلمنا أبو خليل من فكرة الساعة وبشكل دوران كامل 360 درجة ، حتى أنني دعمت فكرة الزوايا التي تكون قيمتها أقل من 0 ( -250 ) مثلاً ، وقد انتهيت منها الى حد ما :yes: 

  • Like 1
رابط هذا التعليق
شارك

8 دقائق مضت, Foksh said:

ولكن ماذا لو كانت الدرجة أكبر من 160 !!!!

في الوقت الحالي هذا العداد من 1 إلى 160 .. ولو تم إدخال رقم أقل من الصفر أو أعلى من 160 فسيقف عند الحد الأدنى أو الأعلى ..
 

أما لو كنت تقصد أن الحالة لديك تستدعي ترقيم مختلف ، حينها سنحتاج لإعادة التصميم والأرقام المخزنة 😁 (وهذا سهل إن شاء الله ) ..
 

ولكني سأقف هنا حتى أستمتع بالنظر إلى فكرتك 😄

  • Like 2
رابط هذا التعليق
شارك

32 دقائق مضت, Moosak said:

وهذا سهل إن شاء الله

إن شاء الله سهلة عليك مهندسنا الكبير ,,
أما بالنسبة لفكرتي فسأذكر سبب حاجتي لهذه الفكرة ، وهي أنني سأضيف فكرة اتجاه القبلة الى برنامجي ( صلوات ) ، وتعتمد الفكرة في تنفيذها على عملية حسابية تستند الى خطي الطول والعرض لكل موقع . 😁

 

32 دقائق مضت, Moosak said:

ولكني سأقف هنا حتى أستمتع بالنظر إلى فكرتك 😄

حاضر يا سيدي ، حال انتهائي سأدرجها هنا :wink2:

وهذا يا مهندسنا @Moosak الكود الذي خلصت به لتنفيذ فكرتي 

    Dim ctrl As Control
    Dim secValue As Integer
    Dim Rx As Integer
    Rx = Abs(Me.Txt_Sec.Value)
    secValue = Abs(Round(Me.Txt_Sec.Value / 6, 0))
    If Me.Txt_Sec.Value < 0 Then
        secValue = (360 - Rx) \ 6
    End If
    For Each ctrl In Controls
        If Left(ctrl.Name, 1) = "s" Then
            If Right(ctrl.Name, Len(ctrl.Name) - 1) = secValue Then
                Me(ctrl.Name).Visible = True
            Else
                Me(ctrl.Name).Visible = False
            End If
        End If
    Next

 

تم تعديل بواسطه Foksh
  • Like 1
رابط هذا التعليق
شارك

23 ساعات مضت, Moosak said:

ولكني سأقف هنا حتى أستمتع بالنظر إلى فكرتك 😄

تم الإنتهاء من الفكرة ولله الحمد ,,

وأرجو التكرم بتجربة الفكرة وإخباري بالنتيجة أو رأيكم ..

الكود الأول للزر المسؤول عن طلب إدخال القيمة

Private Sub Btn_Job_Click()
    Dim userInput As String
    Dim numericValue As Double
    Do
        userInput = InputBox("الرجاء إدخال القيمة رقمية", "إدخال قيمة")
        If userInput = "" Then
            Exit Sub
            Else
            DisplayQiblaDirection userInput
        End If
        If IsNumeric(userInput) Then
            numericValue = CDbl(userInput)
            Exit Do
        Else
            MsgBox "الرجاء إدخال قيمة رقمية فقط", vbExclamation, "قيمة غير رقمية"
        End If
    Loop
End Sub

 

الدالة التي من خلالها تم حل المشكلة وهي عرض الصورة التي تدل على الزاوية أو القيمة التي تم إدخالها في الرسالة . مع العلم أن كل صورة تمثل 6 درجات

Private Sub DisplayQiblaDirection(ByVal userInput As String)
    Dim secValue As Integer
    Dim Rx As Integer
    Dim ctrl As Control
    Dim numericValue As Double
    If IsNumeric(userInput) Then
        numericValue = CDbl(userInput)
    Else
        Exit Sub
    End If
    Rx = Abs(numericValue)
    secValue = Abs(Round(numericValue / 6, 0))
    If numericValue < 0 Then
        secValue = (360 - Rx) \ 6
    End If
    For Each ctrl In Controls
        If Left(ctrl.Name, 1) = "s" Then
            If Right(ctrl.Name, Len(ctrl.Name) - 1) = secValue Then
                Me(ctrl.Name).Visible = True
            Else
                Me(ctrl.Name).Visible = False
            End If
        End If
    Next
End Sub

 

Main.PNG.8a73ef7a5a40324e6193e9df207c9f0b.PNG

Test Directions.zip

تم تعديل بواسطه Foksh
إضافة صورة
  • Like 1
  • Thanks 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information