Purpose:
|
Maps a 2D graphic pick on an entity position defined in model space.
|
|
Derivation:
|
pick_ray : ACIS_OBJECT : -
|
|
Filename:
|
kern/kernel/geomhusk/pick_ray.hxx
|
|
Description:
|
A
pick_ray is a combination of a position and a direction. It typically allows mapping a 2D graphic pick on an
ENTITY position, such as an
EDGE, that is defined in model space. In this context, the position is the 2D pick location mapped into 3D space, and the direction is the direction the user looks at (on the model and in the view) when the pick is executed.
|
|
References:
|
by KERN
|
entity_with_ray
|
|
BASE
|
SPAposition, SPAunit_vector
|
|
Constructor:
|
public: pick_ray::pick_ray
();
|
|
|
C++ allocation constructor requests memory for this object but does not populate it.
|
|
|
|
|
|
|
public: pick_ray::pick_ray
(
|
|
|
const pick_ray&
|
// pick ray
|
|
|
);
|
|
|
C++ copy constructor requests memory for this object and populates it with the data from the object supplied as an argument.
|
|
|
|
|
|
|
public: pick_ray::pick_ray
(
|
|
|
const SPAposition&,
|
// position
|
|
|
const SPAunit_vector&
|
// unit vector
|
|
|
);
|
|
|
C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments.
|
|
|
|
|
|
|
public: pick_ray::pick_ray
(
|
|
|
const SPAposition&,
|
// position
|
|
|
const SPAvector&
|
// vector
|
|
|
);
|
|
|
C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments.
|
|
|
|
Methods:
|
public: SPAunit_vector pick_ray::direction
() const;
|
|
|
Gets the direction (SPAunit_vector) from the
pick_ray.
|
|
|
|
|
|
|
public: double pick_ray::distance_to
(
|
|
|
const SPAposition& pt
|
// position
|
|
|
) const;
|
|
|
Computes the distance from the
pick_ray to a position.
|
|
|
|
|
|
|
public: pick_ray pick_ray::operator*
(
|
|
|
const SPAtransf&
|
// transformation
|
|
|
) const;
|
|
|
Returns a new
pick_ray that is the result of applying a transformation to this
pick_ray.
|
|
|
|
|
|
|
public: pick_ray& pick_ray::operator*=
(
|
|
|
const SPAtransf&
|
// transformation
|
|
|
);
|
|
|
Applies a transformation to the
pick_ray.
|
|
|
|
|
|
|
public: SPAposition pick_ray::point
() const;
|
|
|
Gets the position from the
pick_ray.
|
|
|
|
|
|
|
public: void pick_ray::set_direction
(
|
|
|
const SPAunit_vector&
|
// unit vector
|
|
|
);
|
|
|
Sets the direction with a
SPAunit_vector.
|
|
|
|
|
|
|
public: void pick_ray::set_direction
(
|
|
|
const SPAvector&
|
// vector
|
|
|
);
|
|
|
Sets the direction with a vector.
|
|
|
|
|
|
|
public: void pick_ray::set_point
(
|
|
|
const SPAposition&
|
// position
|
|
|
);
|
|
|
Sets the position.
|