查看单个帖子
旧 2009-05-04, 05:05 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】bug in odgeextents3dexpandby9...0

bug in odgeextents3d::expandby(...)
regarding odgeextents3d::expandby(...)
the function expandby() in odgeextents3d (geextents3d.h) seems to expand only in one direction:
code:
inline void odgeextents3d::expandby(const odgevector3d& vect)
{
oda_assert(isvalidextents());
odgepoint3d p1 = m_min, p2 = m_max;
addpoint(p1 + vect);
addpoint(p2 + vect);
}
i'm assuming this should be:
code:
(...)
addpoint(p1 - vect);
addpoint(p2 + vect);
(...)
last edited by tag; 1st august 2007 at 01:30 amfff">. reason: (removed "bug" from title, since it wasn't a bug..)
hi,
i have tested expandby with arx. so it seems that our realization is true.
acdbextents ex;
ex.addpoint(acgepoint3d(0,0,0));
ex.expandby(acgevector3d(1,0,0));
acgepoint3d pmin = ex.minpoint();
acgepoint3d pmax = ex.maxpoint();
// pmin = 0,0,0
// pmax = 1,0,0
it is very useful with thickness objects. for example you have box with thickness 5 in 1,0,0 direction. you can collect all box points to odgeextents and call expandby(5,0,0).
quote:
originally posted by alexander rumyantsev
it is very useful with thickness objects. for example you have box with thickness 5 in 1,0,0 direction. you can collect all box points to odgeextents and call expandby(5,0,0).
a misunderstanding by me then, i assumed the function was supposed to expand the extents in every direction by the given value.
i guess the proper name for what i was thinking of is "grow". thanks for clearing it up.
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)