from netgen.csg import * import netgen.meshing as meshing #from OpenGL.GL import * #from OpenGL.GLU import * #from OpenGL.GLUT import * sp1 = Sphere (Pnt(0,0,0), 0.2) sp2 = Sphere (Pnt(0.5,0,0), 0.2) sp3 = Sphere (Pnt(0,0,0.5), 0.2) sp4 = Sphere (Pnt(0,0.2,0.7), 0.2) all = sp1+sp2+sp3+sp4 geom = CSGeometry() geom.Add (all) #vis = VS(geom) # vis.Draw() #window = 0 # glut window number #width, height = 500, 500 #def mydraw(): # glViewport(0, 0, width, height); # glMatrixMode(GL_PROJECTION); # glLoadIdentity(); # pnear = 0.1; # pfar = 10; # gluPerspective(20.0, 1.0*width / height, pnear, pfar); # glMatrixMode(GL_MODELVIEW); # glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT) # glLoadIdentity() # gluLookAt (0, 0, 6, 0, 0, 0, 0, 1, 0); ## glBegin(GL_QUADS) ## glColor4d(0.0, 1.0, 0.0, 0.0); ## glVertex3d(0.0,0.0,0.7) ## glVertex3d(1.0,0.0,2.1) ## glColor4d(1.0, 1.0, 1.0, 0.0); ## glVertex3d(1.0,1.0,0.2) ## glVertex3d(0.0,1.0,0.5) ## glEnd() # vis.Draw() # glutSwapBuffers() #glutInit("mainwin") # initialize glut #glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_ALPHA | GLUT_DEPTH) #glutInitWindowSize(width, height) # set window size #glutInitWindowPosition(0, 0) # set window position #window = glutCreateWindow(b"ngs") # create window with title #glutDisplayFunc(vis.Draw) # set draw function callback #glutIdleFunc(mydraw) # draw all the time #glutMainLoop() param = meshing.MeshingParameters(maxh=0.2) mesh = GenerateMesh (geom, param) mesh.Save ("test.vol")