بعد تفكير وجدت حل ربما يكون صحيحا وربما خطأ
واتمنى ان تساعدونا فى تقييم هذا الحل

وهو كما يلى
الطبقة المراد معرفة العرض الخاص بها هى طبقة طرق اى انها تمتاز غالبا باطوال كبيرة
فقمت بعمل field باسم perimeter
و field اخر باسم area
و field اخر باسم per_half
و field اخر باسم width
وقمت بحساب ال perimeter و area بالطريقة العادية من calculate values
وقمت بحساب ال field المسمى per_half بقسمة المحيط /2 (perimeter/2 )
وقمت بحساب ال field المسمى width بقسمة المساحة على نصف المحيط ( area/per_half )

ارجو التفكير فيما ذكرت والتعليق
وشكرا