سؤال

ونتيجة لبلدي تثليث ديلوناي على 1000 نقطة عشوائية unifomally doens't ننظر الحق على الإطلاق (انظر الصورة). ويبدو أن بعض النقاط التي تنتمي إلى عدد كبير بشكل غير طبيعي من مثلثات ... أي فكرة؟

والتفاصيل: CGAL 3.4، ويندوز XP

وهذه هي أنواع اعتدت:

typedef CGAL::Exact_predicates_inexact_constructions_kernel K; 
typedef CGAL::Triangulation_2<K>         Triangulation; 
typedef Triangulation::Point             Point; 

والعرض هو على النحو التالي:

delaunay_c::Triangulation::Edge_iterator eit = T.edges_begin(); 
delaunay_c::Triangulation::Edge_iterator end = T.edges_end(); 
for(;eit != end; ++eit) 
{ 
    delaunay_c::Triangulation::Segment s = T.segment(eit); 
    line.m_a = delaunay_c::convert(s.source()); 
    line.m_b = delaunay_c::convert(s.target()); 
    line.draw(); 
} 

ووتحويل وظيفة ببساطة تحويل من CGAL نقطة إلى تنسيق نقطة أخرى

وتحرير: بعد الجواب المختار، أنا مجرد تغيير التثليث إلى delaunay_triangulation:

typedef CGAL::Delaunay_triangulation_2<K>         Triangulation;

وأنه أعطى:

هل كانت مفيدة؟

المحلول

هل تستخدم العادية بدلا من التثليث ديلوناي؟

وأنت تستخدم ما يلي، أليس كذلك؟

CGAL::Delaunay_triangulation_2<Traits,Tds>

http://www.cgal.org/ دليل / 3.4 / doc_html / cgal_manual / Triangulation_2_ref / Class_Delaunay_triangulation_2.html # Cross_link_anchor_1152

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top