McNeel Wiki
How To: Add a Torus to Rhino
edit · print · help · all topics
Main Pages

AccuRender

Bongo

Brazil r/s

Developer

Flamingo

Penguin

Rhino Blogs

Rhino

Rhino Labs

Search

Languages

Česky

Deutsch

English

Español

Français

Italiano

Polish

日本語

한국어

中文(繁體)

 
.
SummaryDemonstrates how to create a torus using ON_BrepTorus and add it to Rhino.
DeveloperC++, .NET

For more information on the ON_BrepTorus function, see it's definition in opennurbs_brep.h.

C++

  CRhinoCommand::result CCommandTest::RunCommand(
          const CRhinoCommandContext& context 
          )
  {
    double major_radius = 4.0;
    double minor_radius = 2.0;
    ON_Plane plane( ON_origin, ON_zaxis );
    ON_Circle circle( plane, major_radius );
    ON_Torus torus( circle, minor_radius );
    ON_Brep* brep = ON_BrepTorus( torus );
    if( brep )
    {
      CRhinoBrepObject* torus_object = new CRhinoBrepObject();
      torus_object->SetBrep( brep );
      if( context.m_doc.AddObject(torus_object) )
        context.m_doc.Redraw();
      else
        delete torus_object;
    }
    return CRhinoCommand::success;
  }

VB.NET (Rhino 4)

  Public Overrides Function RunCommand(ByVal context As IRhinoCommandContext) _
    As IRhinoCommand.result


    Dim major_radius As Double = 4
    Dim minor_radius As Double = 2
    Dim plane As New OnPlane(OnUtil.On_origin, OnUtil.On_zaxis)
    Dim circle As New OnCircle(plane, major_radius)
    Dim torus As New OnTorus(circle, minor_radius)
    Dim brep As OnBrep = OnUtil.ON_BrepTorus(torus)
    If (Not (brep Is Nothing)) Then
      If (context.m_doc.AddBrepObject(brep) IsNot Nothing) Then
        context.m_doc.Redraw()
      End If
    End If
    Return IRhinoCommand.result.success
  End Function

C# (Rhino 4)

  public override IRhinoCommand.result RunCommand(IRhinoCommandContext context)
  {
    double major_radius = 4;
    double minor_radius = 2;
    OnPlane plane = new OnPlane(OnUtil.On_origin, OnUtil.On_zaxis);
    OnCircle circle = new OnCircle(plane, major_radius);
    OnTorus torus = new OnTorus(circle, minor_radius);


    OnBrep brep = OnUtil.ON_BrepTorus(torus);
    if (brep != null)
    {
      if (context.m_doc.AddBrepObject(brep) != null)
        context.m_doc.Redraw();
    }
    return IRhinoCommand.result.success;
  }
rename · changes · history · subscriptions · lost and found · references · file upload