indexing description: "Wraps the OpenGL Quadric functions" documentation: "An OpenGL Quadric is a factory-like object to create primitives." "You don't need to create a quadric for each primitiv, one is enougth." date: "$Date$" revision: "$Revision$" class EMGLU_QUADRIC inherit EMGL_FUNCTIONS export {NONE} all redefine default_create end GLU_FUNCTIONS export {NONE} all redefine default_create end EM_CONSTANTS export {NONE} all redefine default_create end DISPOSABLE redefine default_create end -- To cheat the hidden texture id EMGL_BASIC_TEXTURE export {NONE} all redefine default_create end feature {NONE} -- Initialization default_create is -- Create a new EMGLU_QUADRIC object. do quad := glu_new_quadric_external end dispose is -- Dispose the opengl mem do glu_delete_quadric( quad ) end quad: POINTER feature --general function wrapper cylinder ( base:DOUBLE; top:DOUBLE; height:DOUBLE; slices:INTEGER; stacks:INTEGER ) is --Wrap the OpenGL function `glu_cylinder` do glu_cylinder_external( quad, base, top, height, slices, stacks ) end disk ( inner:DOUBLE; outer:DOUBLE; slices:INTEGER; loops:INTEGER ) is --Wrap the OpenGL function `glu_disk` do glu_disk_external( quad, inner, outer, slices, loops ) end partial_disk ( inner:DOUBLE; outer:DOUBLE; slices:INTEGER; loops:INTEGER; start:DOUBLE; sweep:DOUBLE ) is --Wrap the OpenGL function `glu_partial_disk` do glu_partial_disk_external( quad, inner, outer, slices, loops, start, sweep ) end callback ( which:INTEGER; callbackfunc:POINTER ) is --Wrap the OpenGL function `glu_quadric_callback` do glu_quadric_callback_external( quad, which, callbackfunc ) end draw_style ( draw:INTEGER ) is --Wrap the OpenGL function `glu_quadric_draw_style` do glu_quadric_draw_style_external( quad, draw ) end normals ( normal:INTEGER ) is --Wrap the OpenGL function `glu_quadric_normals` do glu_quadric_normals_external( quad, normal ) end orientation ( o:INTEGER ) is --Wrap the OpenGL function `glu_quadric_orientation` do glu_quadric_orientation_external( quad, o ) end texture ( t:EMGL_BASIC_TEXTURE ) is --Wrap the OpenGL function `glu_quadric_texture` do glu_quadric_texture_external( quad, t.texture_id ) end sphere ( radius:DOUBLE; slices:INTEGER; stacks:INTEGER ) is --Wrap the OpenGL function `glu_sphere` do glu_sphere_external( quad, radius, slices, stacks ) end invariant valid_quadric_pointer: quad/=default_pointer end -- class EMGLU_QUADRIC