|
cgma
|
#include <Surface.hpp>
Public Types | |
| typedef Curve | ChildType |
Public Member Functions | |
| Surface () | |
| virtual | ~Surface () |
| virtual CubitSense | get_shell_sense (ShellSM *shell_ptr) const =0 |
| virtual void | closest_point_trimmed (CubitVector from_point, CubitVector &point_on_surface)=0 |
| virtual void | closest_points_trimmed (std::vector< CubitVector > &from_points_list, std::vector< CubitVector > &points_on_surface_list) |
| virtual CubitStatus | closest_point_along_vector (CubitVector &from_point, CubitVector &along_vector, CubitVector &point_on_surface)=0 |
| virtual CubitStatus | get_point_normal (CubitVector &point, CubitVector &normal)=0 |
| virtual void | param_dir (CubitVector &, CubitVector &, double &, double &) |
| virtual CubitStatus | closest_point_uv_guess (CubitVector const &location, double &u_guess, double &v_guess, CubitVector *closest_location=NULL, CubitVector *unit_normal=NULL)=0 |
| virtual CubitStatus | closest_point (CubitVector const &location, CubitVector *closest_location=NULL, CubitVector *unit_normal=NULL, CubitVector *curvature1=NULL, CubitVector *curvature2=NULL)=0 |
| virtual CubitStatus | closest_points (DLIList< CubitVector * > &location_list, DLIList< CubitVector * > *closest_location_list=NULL, DLIList< CubitVector * > *unit_normal_list=NULL, DLIList< CubitVector * > *curvature1_list=NULL, DLIList< CubitVector * > *curvature2_list=NULL) |
| virtual CubitStatus | principal_curvatures (CubitVector const &location, double &curvature_1, double &curvature_2, CubitVector *closest_location=NULL)=0 |
| virtual CubitStatus | evaluate (double u, double v, CubitVector *position, CubitVector *normal, CubitVector *curvature1, CubitVector *curvature2)=0 |
| virtual CubitStatus | evaluate (double u, double v, CubitVector &pos, CubitVector deriv1[2], CubitVector deriv2[3]) |
| virtual CubitVector | position_from_u_v (double u, double v)=0 |
| virtual CubitStatus | u_v_from_position (CubitVector const &location, double &u, double &v, CubitVector *closest_location=NULL)=0 |
| virtual CubitBoolean | is_periodic ()=0 |
| virtual CubitBoolean | is_periodic_in_U (double &period)=0 |
| virtual CubitBoolean | is_periodic_in_V (double &period)=0 |
| virtual CubitBoolean | is_singular_in_U (double u_param)=0 |
| virtual CubitBoolean | is_singular_in_V (double v_param)=0 |
| virtual CubitBoolean | is_closed_in_U () |
| virtual CubitBoolean | is_closed_in_V () |
| virtual CubitStatus | uv_derivitives (double u_param, double v_param, CubitVector &du, CubitVector &dv)=0 |
| virtual CubitBoolean | is_parametric ()=0 |
| virtual CubitBoolean | get_param_range_U (double &lower_bound, double &upper_bound)=0 |
| virtual CubitBoolean | get_param_range_V (double &lower_bound, double &upper_bound)=0 |
| virtual CubitBoolean | is_position_on (CubitVector &test_position)=0 |
| virtual void | are_positions_on (DLIList< CubitVector * > &test_position_list, DLIList< CubitBoolean * > &is_on_list) |
| virtual CubitPointContainment | point_containment (const CubitVector &point)=0 |
| virtual CubitPointContainment | point_containment (double u, double v)=0 |
| virtual CubitSense | get_geometry_sense ()=0 |
| virtual CubitSense | get_uv_sense () |
| virtual CubitStatus | get_projected_distance_on_surface (CubitVector *pos1, CubitVector *pos2, double &distance)=0 |
| virtual GeometryType | geometry_type () |
| virtual GeometryType | is_cylindrical () |
| virtual CubitStatus | get_nurb_params (bool &rational, int °ree_u, int °ree_v, int &num_cntrl_pts_u, int &num_cntrl_pts_v, DLIList< CubitVector > &cntrl_pts, DLIList< double > &weights, DLIList< double > &u_knots, DLIList< double > &v_knots) const =0 |
| virtual CubitStatus | get_sphere_params (CubitVector ¢er, double &radius) const =0 |
| virtual CubitStatus | get_cone_params (CubitVector ¢er, CubitVector &normal, CubitVector &major_axis, double &radius_ratio, double &sine_angle, double &cos_angle) const =0 |
| virtual CubitStatus | get_torus_params (CubitVector ¢er, CubitVector &normal, double &major_radius, double &minor_radius) const =0 |
Definition at line 37 of file Surface.hpp.
| typedef Curve Surface::ChildType |
Definition at line 47 of file Surface.hpp.
| Surface::Surface | ( | ) |
Definition at line 37 of file Surface.cpp.
{
}
| Surface::~Surface | ( | ) | [virtual] |
Definition at line 51 of file Surface.cpp.
{}
| void Surface::are_positions_on | ( | DLIList< CubitVector * > & | test_position_list, |
| DLIList< CubitBoolean * > & | is_on_list | ||
| ) | [virtual] |
Definition at line 109 of file Surface.cpp.
{
CubitVector *test_position;
CubitBoolean *is_on;
test_position_list.reset();
is_on_list.reset();
for (int i=0; i<test_position_list.size(); i++)
{
test_position = test_position_list.get_and_step();
is_on = is_on_list.get_and_step();
*is_on = is_position_on( *test_position );
}
}
| virtual CubitStatus Surface::closest_point | ( | CubitVector const & | location, |
| CubitVector * | closest_location = NULL, |
||
| CubitVector * | unit_normal = NULL, |
||
| CubitVector * | curvature1 = NULL, |
||
| CubitVector * | curvature2 = NULL |
||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| CubitStatus Surface::closest_point_along_vector | ( | CubitVector & | from_point, |
| CubitVector & | along_vector, | ||
| CubitVector & | point_on_surface | ||
| ) | [pure virtual] |
Implemented in FacetSurface, CompositeSurface, PartitionSurface, OCCSurface, and SubSurface.
Definition at line 125 of file Surface.cpp.
{
return CUBIT_FAILURE;
}
| virtual void Surface::closest_point_trimmed | ( | CubitVector | from_point, |
| CubitVector & | point_on_surface | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitStatus Surface::closest_point_uv_guess | ( | CubitVector const & | location, |
| double & | u_guess, | ||
| double & | v_guess, | ||
| CubitVector * | closest_location = NULL, |
||
| CubitVector * | unit_normal = NULL |
||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| CubitStatus Surface::closest_points | ( | DLIList< CubitVector * > & | location_list, |
| DLIList< CubitVector * > * | closest_location_list = NULL, |
||
| DLIList< CubitVector * > * | unit_normal_list = NULL, |
||
| DLIList< CubitVector * > * | curvature1_list = NULL, |
||
| DLIList< CubitVector * > * | curvature2_list = NULL |
||
| ) | [virtual] |
Definition at line 54 of file Surface.cpp.
{
CubitVector *curvature1, *curvature2;
CubitVector *unit_normal;
CubitVector *closest_location;
CubitVector *location;
CubitStatus stat;
location_list.reset();
if (closest_location_list) closest_location_list->reset();
if (unit_normal_list) unit_normal_list->reset();
if (curvature1_list) curvature1_list->reset();
if (curvature2_list) curvature2_list->reset();
for (int i=0; i<location_list.size(); i++)
{
location = location_list.get_and_step();
if (closest_location_list == NULL)
closest_location = NULL;
else
closest_location = closest_location_list->get_and_step();
if (unit_normal_list == NULL)
unit_normal = NULL;
else
unit_normal = unit_normal_list->get_and_step();
if (curvature1_list == NULL)
curvature1 = NULL;
else
curvature1 = curvature1_list->get_and_step();
if (curvature2_list == NULL)
curvature2 = NULL;
else
curvature2 = curvature2_list->get_and_step();
stat = closest_point( *location, closest_location, unit_normal, curvature1, curvature2 );
if (stat != CUBIT_SUCCESS)
return stat;
}
return CUBIT_SUCCESS;
}
| void Surface::closest_points_trimmed | ( | std::vector< CubitVector > & | from_points_list, |
| std::vector< CubitVector > & | points_on_surface_list | ||
| ) | [virtual] |
Definition at line 96 of file Surface.cpp.
{
CubitVector from_point;
CubitVector point_on_surface;
for (unsigned int i=0; i<from_points_list.size(); i++)
{
from_point = from_points_list[i];
closest_point_trimmed( from_point, point_on_surface );
points_on_surface_list.push_back( point_on_surface );
}
}
| virtual CubitStatus Surface::evaluate | ( | double | u, |
| double | v, | ||
| CubitVector * | position, | ||
| CubitVector * | normal, | ||
| CubitVector * | curvature1, | ||
| CubitVector * | curvature2 | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| CubitStatus Surface::evaluate | ( | double | u, |
| double | v, | ||
| CubitVector & | pos, | ||
| CubitVector | deriv1[2], | ||
| CubitVector | deriv2[3] | ||
| ) | [virtual] |
Definition at line 132 of file Surface.cpp.
{
PRINT_ERROR("evaluate is not implemented.");
return CUBIT_FAILURE;
}
| virtual GeometryType Surface::geometry_type | ( | ) | [inline, virtual] |
Implements GeometryEntity.
Reimplemented in OCCSurface, FacetSurface, CompositeSurface, PartitionSurface, and SubSurface.
Definition at line 368 of file Surface.hpp.
{return UNDEFINED_SURFACE_TYPE;};
| virtual CubitStatus Surface::get_cone_params | ( | CubitVector & | center, |
| CubitVector & | normal, | ||
| CubitVector & | major_axis, | ||
| double & | radius_ratio, | ||
| double & | sine_angle, | ||
| double & | cos_angle | ||
| ) | const [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitSense Surface::get_geometry_sense | ( | ) | [pure virtual] |
Implemented in OCCSurface, FacetSurface, PartitionSurface, CompositeSurface, and SubSurface.
| virtual CubitStatus Surface::get_nurb_params | ( | bool & | rational, |
| int & | degree_u, | ||
| int & | degree_v, | ||
| int & | num_cntrl_pts_u, | ||
| int & | num_cntrl_pts_v, | ||
| DLIList< CubitVector > & | cntrl_pts, | ||
| DLIList< double > & | weights, | ||
| DLIList< double > & | u_knots, | ||
| DLIList< double > & | v_knots | ||
| ) | const [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitBoolean Surface::get_param_range_U | ( | double & | lower_bound, |
| double & | upper_bound | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, PartitionSurface, CompositeSurface, and SubSurface.
| virtual CubitBoolean Surface::get_param_range_V | ( | double & | lower_bound, |
| double & | upper_bound | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, PartitionSurface, CompositeSurface, and SubSurface.
| virtual CubitStatus Surface::get_point_normal | ( | CubitVector & | point, |
| CubitVector & | normal | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitStatus Surface::get_projected_distance_on_surface | ( | CubitVector * | pos1, |
| CubitVector * | pos2, | ||
| double & | distance | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, and PartitionSurface.
| virtual CubitSense Surface::get_shell_sense | ( | ShellSM * | shell_ptr | ) | const [pure virtual] |
Implemented in FacetSurface, PartitionSurface, OCCSurface, and CompositeSurface.
| virtual CubitStatus Surface::get_sphere_params | ( | CubitVector & | center, |
| double & | radius | ||
| ) | const [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitStatus Surface::get_torus_params | ( | CubitVector & | center, |
| CubitVector & | normal, | ||
| double & | major_radius, | ||
| double & | minor_radius | ||
| ) | const [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitSense Surface::get_uv_sense | ( | ) | [inline, virtual] |
Definition at line 358 of file Surface.hpp.
{
return CUBIT_UNKNOWN;
}
| virtual CubitBoolean Surface::is_closed_in_U | ( | ) | [inline, virtual] |
Reimplemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
Definition at line 268 of file Surface.hpp.
{return CUBIT_FALSE;}
| virtual CubitBoolean Surface::is_closed_in_V | ( | ) | [inline, virtual] |
Reimplemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
Definition at line 269 of file Surface.hpp.
{return CUBIT_FALSE;}
| virtual GeometryType Surface::is_cylindrical | ( | ) | [inline, virtual] |
Definition at line 373 of file Surface.hpp.
{return UNDEFINED_SURFACE_TYPE;};
| virtual CubitBoolean Surface::is_parametric | ( | ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, PartitionSurface, CompositeSurface, and SubSurface.
| virtual CubitBoolean Surface::is_periodic | ( | ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitBoolean Surface::is_periodic_in_U | ( | double & | period | ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitBoolean Surface::is_periodic_in_V | ( | double & | period | ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitBoolean Surface::is_position_on | ( | CubitVector & | test_position | ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, PartitionSurface, CompositeSurface, and SubSurface.
| virtual CubitBoolean Surface::is_singular_in_U | ( | double | u_param | ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitBoolean Surface::is_singular_in_V | ( | double | v_param | ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual void Surface::param_dir | ( | CubitVector & | , |
| CubitVector & | , | ||
| double & | , | ||
| double & | |||
| ) | [inline, virtual] |
Definition at line 74 of file Surface.hpp.
{}
| virtual CubitPointContainment Surface::point_containment | ( | const CubitVector & | point | ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, PartitionSurface, and CompositeSurface.
| virtual CubitPointContainment Surface::point_containment | ( | double | u, |
| double | v | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, PartitionSurface, and CompositeSurface.
| virtual CubitVector Surface::position_from_u_v | ( | double | u, |
| double | v | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitStatus Surface::principal_curvatures | ( | CubitVector const & | location, |
| double & | curvature_1, | ||
| double & | curvature_2, | ||
| CubitVector * | closest_location = NULL |
||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitStatus Surface::u_v_from_position | ( | CubitVector const & | location, |
| double & | u, | ||
| double & | v, | ||
| CubitVector * | closest_location = NULL |
||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, CompositeSurface, PartitionSurface, and SubSurface.
| virtual CubitStatus Surface::uv_derivitives | ( | double | u_param, |
| double | v_param, | ||
| CubitVector & | du, | ||
| CubitVector & | dv | ||
| ) | [pure virtual] |
Implemented in FacetSurface, OCCSurface, PartitionSurface, CompositeSurface, and SubSurface.