
Sat, 02/25/2012 - 14:37
Forums:
I tried the Union of the attached two solids Solid1.step and Solid2.step.. But the result is unexpected.
Solid1: Sphere inside a Sphere. i.e, There is a Cavity in the Solid and both the Spheres are made by revolving a Circular Arc by 360*.
Solid2: It is a Solid Pipe.
Now, when i boolean the two solids, I don't get the desired result.
I used Solidworks to see the Solids and it displayed perfectly. Please help me with this issue, what wrong am I doing?
I also attached the result file as Union.step. Please Help.
Attachments:
Mon, 02/27/2012 - 09:26
Anybody there just let me know, what wrong am I performing in this?
Mon, 02/27/2012 - 09:47
first step file after importing is only creating 2 splines - no solid shape generated. the pipe location after import is not intersecting with 1st solid.
Instead of STEP , you should attach BREP file's.
Mon, 02/27/2012 - 10:08
Hi PG,
I attached the Brep Files of the two solids.
Here is the code which I used for creating a Spherical Surface using revolving the Circular Curve to 360*.
// Points to create an Arc
gp_Pnt point1(Standard_Real(-11.0), Standard_Real(-7.0), Standard_Real(0.0));
gp_Pnt point2(Standard_Real(-7.0), Standard_Real(-3.0), Standard_Real(0.0));
gp_Pnt point3(Standard_Real(-11.0), Standard_Real(1.0), Standard_Real(0.0));
// Creating an OCC Circular Arc
GC_MakeArcOfCircle *occArcOfCircle = new GC_MakeArcOfCircle(point1, point2, point3);
//Geom Curve
Handle(Geom_Curve) m_OCCTCurve = occArcOfCircle->Value();
// Creating an OCC edge
TopoDS_Edge m_OCCTEdge = BRepBuilderAPI_MakeEdge(m_OCCTCurve);
//Direction for the rotary surface
gp_Dir direction(Standard_Real(0.0), Standard_Real(1.0), Standard_Real(0.0));
// Creating axis for the rotation surface
gp_Ax1 axis(gp_Pnt(Standard_Real(-11.0), Standard_Real(-7.0), Standard_Real(0.0)), direction);
//Revolving Shape
BRepPrimAPI_MakeRevol shapeRevolve(edge, axis, Standard_Real(6.2831859588623047));
if(shapeRevolve.IsDone())
{
// OCCT Face
TopoDS_Face m_OCCTFace = TopoDS::Face(shapeRevolve.Shape());
// Writing into STEP File
STEPControl_Controller::Init();
STEPControl_Writer aWriter;
aWriter.Transfer(m_OCCTFace, STEPControl_AsIs);
aWriter.Write("RevolvedFace.step");
}
Please Check this code? M i doing it correctly or not? Because I am not able to see anything in Tool TotalEngineer(Its an Opensource tool, build using OCC)
Thanks for the Reply.
Mon, 02/27/2012 - 16:19
The first brep file is not a solid . The above code looks to create one revolved solid out of the first arc.
What about the 2nd solid and then the cut solid.
Mon, 02/27/2012 - 19:40
Yes PG,
I am trying to create a sphere after revolving a Circular Arc. But I am not getting any success in it. Can you please provide me some solution, or see the above code, if i am doing something wrong, or missing something to be added.
Thanks
Mon, 02/27/2012 - 13:45
Hi PG. Did you check it? Please clarify me, it would be really helpful.
Thanks and Regards,
Sharad Verma
Mon, 02/27/2012 - 18:12
Hi,
may be because the Circular arc was revolved onto a semicircle that's why it's not solid, if u get sucess revolving the semicircle along the circle may be it wud be a solid.
try it out.
Mon, 02/27/2012 - 19:38
Mahimuddin,
when i put angle less than 360*.. It works fine, only with 360* angle its not showing anything.