本文整理汇总了C++中Wvec::perpend方法的典型用法代码示例。如果您正苦于以下问题:C++ Wvec::perpend方法的具体用法?C++ Wvec::perpend怎么用?C++ Wvec::perpend使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Wvec
的用法示例。
在下文中一共展示了Wvec::perpend方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: xf
void
CIRCLE_WIDGET::make_preview( void )
{
_preview.clear();
// Get a coordinate system
Wvec Z = _plane.normal();
Wvec X = Z.perpend();
Wvec Y = cross(Z,X);
Wtransf xf(_center, X, Y, Z);
// Make the hi-res circle for the curve's map1d3d:
const int ORIG_RES = 256;
_preview.realloc(ORIG_RES + 1);
double dt = (2*M_PI)/ORIG_RES;
for (int i=0; i<ORIG_RES; i++) {
double t = dt*i;
_preview += xf*Wpt(_radius*cos(t), _radius*sin(t), 0);
}
_preview += _preview[0]; // make it closed
if( _suggest_active ) {
return;
}
if( _circle == 0 ) {
// XXX - no undo! should fix
_circle = PanelAction::create(
_plane, _center, _radius, TEXBODY::get_skel_mesh(0), _disk_res, 0
);
} else {
Bcurve *border = Bcurve::lookup(_circle->bfaces().get_boundary().edges());
if( border != 0 ) {
Wpt_listMap *map = Wpt_listMap::upcast(border->map());
if( map )
map->set_pts(_preview);
}
}
}