CreateTorus()

Syntax

Result = CreateTorus(#Mesh, Radius.f, SectionRadius.f, Height.f [, NbSectionSegments, NbCircleSegments)
Description
Create a new torus mesh.

Parameters

#Mesh The number to identify the new mesh. #PB_Any can be used to auto-generate this number.
Radius Radius, in world unit, of the torus.
InnerRadius Radius of the section, in world unit, of the torus.
Height Height, in world unit, of the torus.
NbSectionSegments (optional) Number of segments used for the section of the torus (default: 16).
NbCircleSegments (optional) Number of segments used for the circle of the torus (default: 16).

Return value

Returns nonzero if the mesh was created successfully and zero if there was an error. If #PB_Any was used as the #Mesh parameter then the new generated number is returned on success.

Example

  InitEngine3D() 
  InitSprite() 
  
  OpenWindow(0, 0, 0, 640, 480, "Torus example", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  OpenWindowedScreen(WindowID(0), 0, 0, 640, 480, 0, 0, 0)
  
  ; Light
  CreateLight(#PB_Any, RGB(25, 25, 180), -5, 10, 5, #PB_Light_Point)
  
  ; Camera
  CreateCamera(0, 0, 0, 100, 100)
  MoveCamera(0, 2, 4, 3, #PB_Absolute | #PB_Local)
  CameraLookAt(0, 0, 0, 0)
  
  ; Create the torus and attach it to the scene
  CreateTorus(0, 1, 0.3)
  CreateEntity(0, MeshID(0), #PB_Material_None)
  
  Repeat
    RenderWorld()
    FlipBuffers()
  Until WaitWindowEvent(1) = #PB_Event_CloseWindow

See Also

FreeMesh(), CreateCylinder(), CreateMesh(), CreateCube(), CreatePlane(), CreateLine3D()

Supported OS

All

<- CreateSphere() - Mesh Index - CreateTube() ->