查看单个帖子
旧 2009-05-06, 02:43 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】how to get sample points using odge objects

how to get sample points using odge objects
how to get sample points using odge objects
hi,
assuming i have an entity of oddbpolyline, i would like to get some sample points for the entity so that i can draw it in my application. it seems that getsamplepoints from odgepolyline2d would do the job, but i cannot find out how oddbpolyline and odgepolyline2d would work together. any help will be appreciated.
thanks,
-ky
oddbpolyline functions getsegtypeat(), getlinesegat() and getarcsegat() can be used to get ge objects from oddbpolyline. they have getsamplepoints() methods.
note that functions returning 2d ge objects return them in ocs and 3d ones in wcs.
also oddbpolyline may have non-zero start and end segment widths, thickness and linetype different from continuos. so if you need to draw oddbpolyline it would be better to use dd rendering classes.
sergey slezkin

thanks for the reply.
would these methods generate the same results as if i 'explode' the polyline and get each sample points from each of the entities after the 'explode'?
thanks,
-ky
the right method depends on the task - on results you want to get.
explode() generates a set of db objects. they have no getsamplepoints method. polyline is exploded into a set of oddblines and oddbarcs. if the polyline has non-zero width it gets lost since lines and arcs can't have width.
if your application needs to draw the polyline the best option is to use dd drawing functionality else you'll need to process linetypes and polyline's segment width yourself.
sergey slezkin
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)