Revision: 57231
http://sourceforge.net/p/brlcad/code/57231
Author: starseeker
Date: 2013-08-28 19:27:58 +0000 (Wed, 28 Aug 2013)
Log Message:
-----------
Moving things into struct - will allow easier passing of info between functions
Modified Paths:
--------------
brlcad/trunk/src/conv/step/g-step/ON_Brep.cpp
brlcad/trunk/src/conv/step/g-step/ON_Brep.h
Modified: brlcad/trunk/src/conv/step/g-step/ON_Brep.cpp
===================================================================
--- brlcad/trunk/src/conv/step/g-step/ON_Brep.cpp 2013-08-28 18:58:26 UTC
(rev 57230)
+++ brlcad/trunk/src/conv/step/g-step/ON_Brep.cpp 2013-08-28 19:27:58 UTC
(rev 57231)
@@ -625,15 +625,14 @@
bool
ON_BRep_to_STEP(ON_Brep *brep, Exporter_Info_AP203 *info)
{
- std::vector<STEPentity *> cartesian_pnts(brep->m_V.Count(), (STEPentity
*)0);
- std::vector<STEPentity *> vertex_pnts(brep->m_V.Count(), (STEPentity *)0);
- std::vector<STEPentity *> three_dimensional_curves(brep->m_C3.Count(),
(STEPentity *)0);
- std::vector<STEPentity *> edge_curves(brep->m_E.Count(), (STEPentity *)0);
- std::vector<STEPentity *> oriented_edges;
- std::vector<STEPentity *> edge_loops(brep->m_L.Count(), (STEPentity *)0);
- std::vector<STEPentity *> outer_bounds(brep->m_F.Count(), (STEPentity *)0);
- std::vector<STEPentity *> surfaces(brep->m_S.Count(), (STEPentity *)0);
- std::vector<STEPentity *> faces(brep->m_F.Count(), (STEPentity *)0);
+ info->cartesian_pnts.assign(brep->m_V.Count(), (STEPentity *)0);
+ info->vertex_pnts.assign(brep->m_V.Count(), (STEPentity *)0);
+ info->three_dimensional_curves.assign(brep->m_C3.Count(), (STEPentity *)0);
+ info->edge_curves.assign(brep->m_E.Count(), (STEPentity *)0);
+ info->edge_loops.assign(brep->m_L.Count(), (STEPentity *)0);
+ info->outer_bounds.assign(brep->m_F.Count(), (STEPentity *)0);
+ info->surfaces.assign(brep->m_S.Count(), (STEPentity *)0);
+ info->faces.assign(brep->m_F.Count(), (STEPentity *)0);
/* Preliminary preparations. If we have closed curves and edges that
define
* loops, and we are avoiding such closed structures for export, we need to
@@ -643,8 +642,6 @@
* an alternative - split all closed 3D curves in advance and store the
* split results in maps, which can be used for look-up in place of the
* standard ON_Brep arrays.*/
- std::map<int, std::pair<STEPentity *, STEPentity *> > sdai_curve_to_splits;
- std::map<int, STEPentity * > split_midpt_vertex;
for (int i = 0; i < brep->m_C3.Count(); ++i) {
ON_Curve* curve = brep->m_C3[i];
if (curve->IsClosed()) {
@@ -674,7 +671,7 @@
right_curve->self_intersect_(LFalse);
right_curve->name_("''");
info->instance_list->Append(right_curve, completeSE);
- sdai_curve_to_splits[i] = std::pair<STEPentity *, STEPentity
*>((STEPentity *)&(*left_curve), (STEPentity *)&(*right_curve));
+ info->sdai_curve_to_splits[i] = std::pair<STEPentity *, STEPentity
*>((STEPentity *)&(*left_curve), (STEPentity *)&(*right_curve));
// Midpoint vertex
SdaiCartesian_point *pt = (SdaiCartesian_point
*)info->registry->ObjCreate("CARTESIAN_POINT");
info->instance_list->Append(pt, completeSE);
@@ -685,7 +682,7 @@
vpt->name_("''");
vpt->vertex_geometry_((const SdaiPoint_ptr)pt);
info->instance_list->Append(vpt, completeSE);
- split_midpt_vertex[i] = (STEPentity *)&(*vpt);
+ info->split_midpt_vertex[i] = (STEPentity *)&(*vpt);
}
}
@@ -696,17 +693,17 @@
// Set up vertices and associated cartesian points
for (int i = 0; i < brep->m_V.Count(); ++i) {
// Cartesian points (actual 3D geometry)
- cartesian_pnts.at(i) = info->registry->ObjCreate("CARTESIAN_POINT");
- ((SdaiCartesian_point *)cartesian_pnts.at(i))->name_("''");
- info->instance_list->Append(cartesian_pnts.at(i), completeSE);
+ info->cartesian_pnts.at(i) =
info->registry->ObjCreate("CARTESIAN_POINT");
+ ((SdaiCartesian_point *)info->cartesian_pnts.at(i))->name_("''");
+ info->instance_list->Append(info->cartesian_pnts.at(i), completeSE);
ON_3dPoint v_pnt = brep->m_V[i].Point();
- ON_3dPoint_to_Cartesian_point(&(v_pnt), (SdaiCartesian_point
*)cartesian_pnts.at(i));
+ ON_3dPoint_to_Cartesian_point(&(v_pnt), (SdaiCartesian_point
*)info->cartesian_pnts.at(i));
// Vertex points (topological, references actual 3D geometry)
- vertex_pnts.at(i) = info->registry->ObjCreate("VERTEX_POINT");
- ((SdaiVertex_point *)vertex_pnts.at(i))->name_("''");
- ((SdaiVertex_point *)vertex_pnts.at(i))->vertex_geometry_((const
SdaiPoint_ptr)cartesian_pnts.at(i));
- info->instance_list->Append(vertex_pnts.at(i), completeSE);
+ info->vertex_pnts.at(i) = info->registry->ObjCreate("VERTEX_POINT");
+ ((SdaiVertex_point *)info->vertex_pnts.at(i))->name_("''");
+ ((SdaiVertex_point *)info->vertex_pnts.at(i))->vertex_geometry_((const
SdaiPoint_ptr)info->cartesian_pnts.at(i));
+ info->instance_list->Append(info->vertex_pnts.at(i), completeSE);
}
// 3D curves
@@ -736,9 +733,9 @@
* create our own
*/
- three_dimensional_curves.at(i) = info->registry->ObjCreate("LINE");
+ info->three_dimensional_curves.at(i) =
info->registry->ObjCreate("LINE");
- SdaiLine *curr_line = (SdaiLine *)three_dimensional_curves.at(i);
+ SdaiLine *curr_line = (SdaiLine
*)info->three_dimensional_curves.at(i);
curr_line->pnt_((SdaiCartesian_point
*)info->registry->ObjCreate("CARTESIAN_POINT"));
ON_3dPoint_to_Cartesian_point(&(m_line->from), curr_line->pnt_());
curr_line->dir_((SdaiVector *)info->registry->ObjCreate("VECTOR"));
@@ -755,7 +752,7 @@
info->instance_list->Append(curr_line->pnt_(), completeSE);
info->instance_list->Append(curr_dir->orientation_(), completeSE);
info->instance_list->Append(curr_line->dir_(), completeSE);
- info->instance_list->Append(three_dimensional_curves.at(i),
completeSE);
+ info->instance_list->Append(info->three_dimensional_curves.at(i),
completeSE);
curve_converted = 1;
}
@@ -767,25 +764,25 @@
std::cout << "Have NurbsCurve\n";
if (n_curve->IsRational()) {
std::cout << "TODO - Have Rational NurbsCurve\n";
- three_dimensional_curves.at(i) =
info->registry->ObjCreate("RATIONAL_B_SPLINE_CURVE");
+ info->three_dimensional_curves.at(i) =
info->registry->ObjCreate("RATIONAL_B_SPLINE_CURVE");
} else {
- three_dimensional_curves.at(i) =
info->registry->ObjCreate("B_SPLINE_CURVE_WITH_KNOTS");
- SdaiB_spline_curve *curr_curve = (SdaiB_spline_curve
*)three_dimensional_curves.at(i);
+ info->three_dimensional_curves.at(i) =
info->registry->ObjCreate("B_SPLINE_CURVE_WITH_KNOTS");
+ SdaiB_spline_curve *curr_curve = (SdaiB_spline_curve
*)info->three_dimensional_curves.at(i);
curr_curve->degree_(n_curve->Degree());
ON_NurbsCurveCV_to_EntityAggregate(n_curve, curr_curve,
info->registry, info->instance_list);
- SdaiB_spline_curve_with_knots *curve_knots =
(SdaiB_spline_curve_with_knots *)three_dimensional_curves.at(i);
+ SdaiB_spline_curve_with_knots *curve_knots =
(SdaiB_spline_curve_with_knots *)info->three_dimensional_curves.at(i);
ON_NurbsCurveKnots_to_Aggregates(n_curve, curve_knots);
}
- ((SdaiB_spline_curve
*)three_dimensional_curves.at(i))->curve_form_(B_spline_curve_form__unspecified);
- ((SdaiB_spline_curve
*)three_dimensional_curves.at(i))->closed_curve_(SDAI_LOGICAL(n_curve->IsClosed()));
+ ((SdaiB_spline_curve
*)info->three_dimensional_curves.at(i))->curve_form_(B_spline_curve_form__unspecified);
+ ((SdaiB_spline_curve
*)info->three_dimensional_curves.at(i))->closed_curve_(SDAI_LOGICAL(n_curve->IsClosed()));
/* TODO: Assume we don't have self-intersecting curves for
* now - need some way to test this...
*/
- ((SdaiB_spline_curve
*)three_dimensional_curves.at(i))->self_intersect_(LFalse);
- ((SdaiB_spline_curve *)three_dimensional_curves.at(i))->name_("''");
- info->instance_list->Append(three_dimensional_curves.at(i),
completeSE);
+ ((SdaiB_spline_curve
*)info->three_dimensional_curves.at(i))->self_intersect_(LFalse);
+ ((SdaiB_spline_curve
*)info->three_dimensional_curves.at(i))->name_("''");
+ info->instance_list->Append(info->three_dimensional_curves.at(i),
completeSE);
curve_converted = 1;
}
@@ -799,15 +796,15 @@
// edge topology - ON_BrepEdge -> edge curves and oriented edges
for (int i = 0; i < brep->m_E.Count(); ++i) {
ON_BrepEdge *edge = &(brep->m_E[i]);
- edge_curves.at(i) = info->registry->ObjCreate("EDGE_CURVE");
- info->instance_list->Append(edge_curves.at(i), completeSE);
+ info->edge_curves.at(i) = info->registry->ObjCreate("EDGE_CURVE");
+ info->instance_list->Append(info->edge_curves.at(i), completeSE);
- SdaiEdge_curve *e_curve = (SdaiEdge_curve *)edge_curves.at(i);
+ SdaiEdge_curve *e_curve = (SdaiEdge_curve *)info->edge_curves.at(i);
e_curve->name_("''");
- e_curve->edge_geometry_(((SdaiCurve
*)three_dimensional_curves.at(edge->EdgeCurveIndexOf())));
+ e_curve->edge_geometry_(((SdaiCurve
*)info->three_dimensional_curves.at(edge->EdgeCurveIndexOf())));
e_curve->same_sense_(BTrue);
- e_curve->edge_start_(((SdaiVertex
*)vertex_pnts.at(edge->Vertex(0)->m_vertex_index)));
- e_curve->edge_end_(((SdaiVertex
*)vertex_pnts.at(edge->Vertex(1)->m_vertex_index)));
+ e_curve->edge_start_(((SdaiVertex
*)info->vertex_pnts.at(edge->Vertex(0)->m_vertex_index)));
+ e_curve->edge_end_(((SdaiVertex
*)info->vertex_pnts.at(edge->Vertex(1)->m_vertex_index)));
}
// loop topology. STEP defines loops with 3D edge curves, but
@@ -818,20 +815,20 @@
for (int i = 0; i < brep->m_L.Count(); ++i) {
ON_BrepLoop *loop= &(brep->m_L[i]);
std::cout << "Loop " << i << "\n";
- edge_loops.at(i) = info->registry->ObjCreate("EDGE_LOOP");
- info->instance_list->Append(edge_loops.at(i), completeSE);
- ((SdaiEdge_loop *)edge_loops.at(i))->name_("''");
+ info->edge_loops.at(i) = info->registry->ObjCreate("EDGE_LOOP");
+ info->instance_list->Append(info->edge_loops.at(i), completeSE);
+ ((SdaiEdge_loop *)info->edge_loops.at(i))->name_("''");
// Why doesn't SdaiEdge_loop's edge_list_() function give use
// the edge_list from the SdaiPath?? Initialized to NULL and
// crashes - what good is it? Have to get at the internal
// SdaiPath directly to build something that STEPwrite will
// output.
- SdaiPath *e_loop_path = (SdaiPath *)edge_loops.at(i)->GetNextMiEntity();
+ SdaiPath *e_loop_path = (SdaiPath
*)info->edge_loops.at(i)->GetNextMiEntity();
for (int l = 0; l < loop->TrimCount(); ++l) {
- int trim_edge = Add_Edge(loop->Trim(l), info->registry,
info->instance_list, &oriented_edges, &edge_curves, &vertex_pnts);
+ int trim_edge = Add_Edge(loop->Trim(l), info->registry,
info->instance_list, &info->oriented_edges, &info->edge_curves,
&info->vertex_pnts);
if (trim_edge >= 0)
- e_loop_path->edge_list_()->AddNode(new
EntityNode((SDAI_Application_instance *)(oriented_edges.at(trim_edge))));
+ e_loop_path->edge_list_()->AddNode(new
EntityNode((SDAI_Application_instance *)(info->oriented_edges.at(trim_edge))));
}
}
@@ -859,15 +856,15 @@
ON_NurbsSurface p_nurb;
p_surface->GetNurbForm(p_nurb);
- surfaces.at(i) =
info->registry->ObjCreate("B_SPLINE_SURFACE_WITH_KNOTS");
+ info->surfaces.at(i) =
info->registry->ObjCreate("B_SPLINE_SURFACE_WITH_KNOTS");
- SdaiB_spline_surface *curr_surface = (SdaiB_spline_surface
*)surfaces.at(i);
+ SdaiB_spline_surface *curr_surface = (SdaiB_spline_surface
*)info->surfaces.at(i);
curr_surface->name_("''");
curr_surface->u_degree_(p_nurb.Degree(0));
curr_surface->v_degree_(p_nurb.Degree(1));
ON_NurbsSurfaceCV_to_GenericAggregate(&p_nurb, curr_surface,
info->registry, info->instance_list);
- SdaiB_spline_surface_with_knots *surface_knots =
(SdaiB_spline_surface_with_knots *)surfaces.at(i);
+ SdaiB_spline_surface_with_knots *surface_knots =
(SdaiB_spline_surface_with_knots *)info->surfaces.at(i);
ON_NurbsSurfaceKnots_to_Aggregates(&p_nurb, surface_knots);
curr_surface->surface_form_(B_spline_surface_form__plane_surf);
/* Planes don't self-intersect */
@@ -875,7 +872,7 @@
/* TODO - need to recognize when these should be true */
curr_surface->u_closed_(LFalse);
curr_surface->v_closed_(LFalse);
- info->instance_list->Append(surfaces.at(i), completeSE);
+ info->instance_list->Append(info->surfaces.at(i), completeSE);
surface_converted = 1;
}
@@ -885,15 +882,15 @@
if (n_surface && !surface_converted) {
std::cout << "Have NurbsSurface\n";
- surfaces.at(i) =
info->registry->ObjCreate("B_SPLINE_SURFACE_WITH_KNOTS");
+ info->surfaces.at(i) =
info->registry->ObjCreate("B_SPLINE_SURFACE_WITH_KNOTS");
- SdaiB_spline_surface *curr_surface = (SdaiB_spline_surface
*)surfaces.at(i);
+ SdaiB_spline_surface *curr_surface = (SdaiB_spline_surface
*)info->surfaces.at(i);
curr_surface->name_("''");
curr_surface->u_degree_(n_surface->Degree(0));
curr_surface->v_degree_(n_surface->Degree(1));
ON_NurbsSurfaceCV_to_GenericAggregate(n_surface, curr_surface,
info->registry, info->instance_list);
- SdaiB_spline_surface_with_knots *surface_knots =
(SdaiB_spline_surface_with_knots *)surfaces.at(i);
+ SdaiB_spline_surface_with_knots *surface_knots =
(SdaiB_spline_surface_with_knots *)info->surfaces.at(i);
ON_NurbsSurfaceKnots_to_Aggregates(n_surface, surface_knots);
curr_surface->surface_form_(B_spline_surface_form__unspecified);
/* TODO - for now, assume the surfaces don't self-intersect - need
to figure out how to test this */
@@ -901,7 +898,7 @@
/* TODO - need to recognize when these should be true */
curr_surface->u_closed_(LFalse);
curr_surface->v_closed_(LFalse);
- info->instance_list->Append(surfaces.at(i), completeSE);
+ info->instance_list->Append(info->surfaces.at(i), completeSE);
surface_converted = 1;
}
@@ -914,15 +911,15 @@
ON_NurbsSurface sum_nurb;
sum_surface->GetNurbForm(sum_nurb);
- surfaces.at(i) =
info->registry->ObjCreate("B_SPLINE_SURFACE_WITH_KNOTS");
+ info->surfaces.at(i) =
info->registry->ObjCreate("B_SPLINE_SURFACE_WITH_KNOTS");
- SdaiB_spline_surface *curr_surface = (SdaiB_spline_surface
*)surfaces.at(i);
+ SdaiB_spline_surface *curr_surface = (SdaiB_spline_surface
*)info->surfaces.at(i);
curr_surface->name_("''");
curr_surface->u_degree_(sum_nurb.Degree(0));
curr_surface->v_degree_(sum_nurb.Degree(1));
ON_NurbsSurfaceCV_to_GenericAggregate(&sum_nurb, curr_surface,
info->registry, info->instance_list);
- SdaiB_spline_surface_with_knots *surface_knots =
(SdaiB_spline_surface_with_knots *)surfaces.at(i);
+ SdaiB_spline_surface_with_knots *surface_knots =
(SdaiB_spline_surface_with_knots *)info->surfaces.at(i);
ON_NurbsSurfaceKnots_to_Aggregates(&sum_nurb, surface_knots);
curr_surface->surface_form_(B_spline_surface_form__plane_surf);
/* TODO - for now, assume non-self-intersecting */
@@ -930,7 +927,7 @@
/* TODO - need to recognize when these should be true */
curr_surface->u_closed_(LFalse);
curr_surface->v_closed_(LFalse);
- info->instance_list->Append(surfaces.at(i), completeSE);
+ info->instance_list->Append(info->surfaces.at(i), completeSE);
surface_converted = 1;
}
@@ -943,11 +940,10 @@
// faces
for (int i = 0; i < brep->m_F.Count(); ++i) {
ON_BrepFace* face = &(brep->m_F[i]);
- faces.at(i) = info->registry->ObjCreate("ADVANCED_FACE");
-
- SdaiAdvanced_face *step_face = (SdaiAdvanced_face *)faces.at(i);
+ info->faces.at(i) = info->registry->ObjCreate("ADVANCED_FACE");
+ SdaiAdvanced_face *step_face = (SdaiAdvanced_face *)info->faces.at(i);
step_face->name_("''");
- step_face->face_geometry_((SdaiSurface
*)surfaces.at(face->SurfaceIndexOf()));
+ step_face->face_geometry_((SdaiSurface
*)info->surfaces.at(face->SurfaceIndexOf()));
// TODO - is m_bRev the same thing as same_sense?
step_face->same_sense_((const Boolean)(face->m_bRev));
@@ -959,7 +955,7 @@
SdaiFace_outer_bound *outer_bound = (SdaiFace_outer_bound
*)info->registry->ObjCreate("FACE_OUTER_BOUND");
outer_bound->name_("''");
info->instance_list->Append(outer_bound, completeSE);
- outer_bound->bound_((SdaiLoop
*)edge_loops.at(curr_loop->m_loop_index));
+ outer_bound->bound_((SdaiLoop
*)info->edge_loops.at(curr_loop->m_loop_index));
// TODO - When should this be false?
outer_bound->orientation_(BTrue);
bounds->AddNode(new EntityNode((SDAI_Application_instance
*)outer_bound));
@@ -967,7 +963,7 @@
SdaiFace_bound *inner_bound = (SdaiFace_bound
*)info->registry->ObjCreate("FACE_BOUND");
inner_bound->name_("''");
info->instance_list->Append(inner_bound, completeSE);
- inner_bound->bound_((SdaiLoop
*)edge_loops.at(curr_loop->m_loop_index));
+ inner_bound->bound_((SdaiLoop
*)info->edge_loops.at(curr_loop->m_loop_index));
// TODO - When should this be false?
inner_bound->orientation_(BTrue);
bounds->AddNode(new EntityNode((SDAI_Application_instance
*)inner_bound));
@@ -977,33 +973,33 @@
}
// Closed shell that assembles the faces
- SdaiClosed_shell *closed_shell = (SdaiClosed_shell
*)info->registry->ObjCreate("CLOSED_SHELL");
- closed_shell->name_("''");
- info->instance_list->Append(closed_shell, completeSE);
+ info->closed_shell = (SdaiClosed_shell
*)info->registry->ObjCreate("CLOSED_SHELL");
+ info->closed_shell->name_("''");
+ info->instance_list->Append(info->closed_shell, completeSE);
- EntityAggregate *shell_faces = closed_shell->cfs_faces_();
+ EntityAggregate *shell_faces = info->closed_shell->cfs_faces_();
for (int i = 0; i < brep->m_F.Count(); ++i) {
- shell_faces->AddNode(new EntityNode((SDAI_Application_instance
*)faces.at(i)));
+ shell_faces->AddNode(new EntityNode((SDAI_Application_instance
*)info->faces.at(i)));
}
// Solid manifold BRep
- SdaiManifold_solid_brep *manifold_solid_brep = (SdaiManifold_solid_brep
*)info->registry->ObjCreate("MANIFOLD_SOLID_BREP");
- info->instance_list->Append(manifold_solid_brep, completeSE);
- manifold_solid_brep->outer_(closed_shell);
- manifold_solid_brep->name_("''");
+ info->manifold_solid_brep = (SdaiManifold_solid_brep
*)info->registry->ObjCreate("MANIFOLD_SOLID_BREP");
+ info->instance_list->Append(info->manifold_solid_brep, completeSE);
+ info->manifold_solid_brep->outer_(info->closed_shell);
+ info->manifold_solid_brep->name_("''");
// Advanced BRep shape representation - this is the object step-g will
look for
- SdaiAdvanced_brep_shape_representation *advanced_brep=
(SdaiAdvanced_brep_shape_representation
*)info->registry->ObjCreate("ADVANCED_BREP_SHAPE_REPRESENTATION");
- advanced_brep->name_("'brep.s'");
- info->instance_list->Append(advanced_brep, completeSE);
- EntityAggregate *items = advanced_brep->items_();
- items->AddNode(new EntityNode((SDAI_Application_instance
*)manifold_solid_brep));
- advanced_brep->context_of_items_((SdaiRepresentation_context *) context);
+ info->advanced_brep= (SdaiAdvanced_brep_shape_representation
*)info->registry->ObjCreate("ADVANCED_BREP_SHAPE_REPRESENTATION");
+ info->advanced_brep->name_("'brep.s'");
+ info->instance_list->Append(info->advanced_brep, completeSE);
+ EntityAggregate *items = info->advanced_brep->items_();
+ items->AddNode(new EntityNode((SDAI_Application_instance
*)info->manifold_solid_brep));
+ info->advanced_brep->context_of_items_((SdaiRepresentation_context *)
context);
// Top level structures
- SdaiRepresentation *shape_rep = Add_Shape_Representation(info->registry,
info->instance_list, (SdaiRepresentation_context *)context);
- (void *)Add_Shape_Representation_Relationship(info->registry,
info->instance_list, shape_rep, (SdaiRepresentation *)advanced_brep);
- (void *)Add_Shape_Definition_Representation(info->registry,
info->instance_list, (SdaiRepresentation *)shape_rep);
+ info->shape_rep = Add_Shape_Representation(info->registry,
info->instance_list, (SdaiRepresentation_context *)context);
+ (void *)Add_Shape_Representation_Relationship(info->registry,
info->instance_list, info->shape_rep, (SdaiRepresentation
*)info->advanced_brep);
+ (void *)Add_Shape_Definition_Representation(info->registry,
info->instance_list, info->shape_rep);
return true;
}
Modified: brlcad/trunk/src/conv/step/g-step/ON_Brep.h
===================================================================
--- brlcad/trunk/src/conv/step/g-step/ON_Brep.h 2013-08-28 18:58:26 UTC (rev
57230)
+++ brlcad/trunk/src/conv/step/g-step/ON_Brep.h 2013-08-28 19:27:58 UTC (rev
57231)
@@ -41,6 +41,7 @@
SdaiClosed_shell *closed_shell;
SdaiManifold_solid_brep *manifold_solid_brep;
SdaiAdvanced_brep_shape_representation *advanced_brep;
+ SdaiRepresentation *shape_rep;
std::map<int, std::pair<STEPentity *, STEPentity *> > sdai_curve_to_splits;
std::map<int, STEPentity * > split_midpt_vertex;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits