def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D, osgWidget.WindowManager.WM_PICK_DEBUG ) menu = osgWidget.Box("menu", osgWidget.Box.HORIZONTAL) menu.addWidget(ColorLabelMenu("Pick me not ")) menu.addWidget(ColorLabelMenu("No, wait, pick me not ")) menu.addWidget(ColorLabelMenu("Don't pick them...")) menu.addWidget(ColorLabelMenu("Grarar not ? not ")) wm.addChild(menu) menu.getBackground().setColor(1.0, 1.0, 1.0, 0.0) menu.resizePercent(100.0) model = osgDB.readNodeFile("osgcool.osgt") model.setNodeMask(MASK_3D) return osgWidget.createExample(viewer, wm, model)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 720.0, MASK_2D #, #osgWidget.WindowManager.WM_USE_RENDERBINS ) notebook1 = Notebook("notebook1") notebook2 = Notebook("notebook2") notebook2.setOrigin(100.0, 100.0) notebook1.attachMoveCallback() notebook2.attachMoveCallback() wm.addChild(notebook1) wm.addChild(notebook2) return osgWidget.createExample(viewer, wm)
def doApp(viewer, node, width, height): wm = osgWidget.WindowManager(viewer, width, height, 0x12) wm.addChild(node) return osgWidget.createExample(viewer, wm)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D, osgWidget.WindowManager.WM_PICK_DEBUG #osgWidget.WindowManager.WM_NO_INVERT_Y ) frame = osgWidget.Frame.createSimpleFrameFromTheme( "frame", osgDB.readImageFile("osgWidget/theme.png"), 40.0, 40.0, osgWidget.Frame.FRAME_ALL ) frame.getBackground().setColor(0.0, 0.0, 0.0, 0.0) # This is our Transformers box. :) box = osgWidget.Box("images", osgWidget.Box.VERTICAL) img1 = osgWidget.Widget("im1", 512.0, 512.0) img2 = osgWidget.Widget("im2", 512.0, 512.0) img3 = osgWidget.Widget("im3", 512.0, 512.0) img4 = osgWidget.Widget("im4", 512.0, 512.0) img1.setImage("osgWidget/scrolled1.jpg", True) img2.setImage("osgWidget/scrolled2.jpg", True) img3.setImage("osgWidget/scrolled3.jpg", True) img4.setImage("osgWidget/scrolled4.jpg", True) img1.setMinimumSize(10.0, 10.0) img2.setMinimumSize(10.0, 10.0) img3.setMinimumSize(10.0, 10.0) img4.setMinimumSize(10.0, 10.0) box.addWidget(img1) box.addWidget(img2) box.addWidget(img3) box.addWidget(img4) box.setEventMask(osgWidget.EVENT_NONE) #frame.getEmbeddedWindow().setWindow(box) frame.setWindow(box) frame.getEmbeddedWindow().setColor(1.0, 1.0, 1.0, 1.0) frame.resize(300.0, 300.0) frame.addCallback(osgWidget.Callback(scrollWindow, osgWidget.EVENT_MOUSE_SCROLL)) frame.addCallback(osgWidget.Callback(changeTheme, osgWidget.EVENT_KEY_DOWN)) wm.addChild(frame) return osgWidget.createExample(viewer, wm)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D ) canvas = osgWidget.Canvas("canvas") canvas.attachMoveCallback() canvas.attachScaleCallback() canvas.addWidget( createWidget("w1", 0.2, osgWidget.Widget.LAYER_LOW), 0.0, 0.0 ) canvas.addWidget( createWidget("w2", 0.4, osgWidget.Widget.LAYER_MIDDLE), 200.0, 0.0 ) canvas.addWidget( createWidget("w3", 0.6, osgWidget.Widget.LAYER_HIGH), 400.0, 0.0 ) wm.addChild(canvas) program = osg.Program() program.addShader(osg.Shader.readShaderFile( osg.Shader.VERTEX, osgDB.findDataFile("osgWidget/osgwidgetshader-vert.glsl") )) program.addShader(osg.Shader.readShaderFile( osg.Shader.FRAGMENT, osgDB.findDataFile("osgWidget/osgwidgetshader-frag.glsl") )) canvas.getGeode().getOrCreateStateSet().setAttribute(program) return osgWidget.createExample(viewer, wm)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D, osgWidget.WindowManager.WM_PICK_DEBUG ) fontSize = 20 font = "fonts/arial.ttf" buttonTheme = "osgWidget/theme-8-shadow.png" borderTheme = "osgWidget/theme-8.png" message = MessageBox() message.create(borderTheme, buttonTheme, "Error - Critical", LABEL1, "Quit", font, fontSize) alpha = AlphaSetterVisitor(.8) message.getWindow().accept(alpha) wm.addChild(message.getWindow()) # center w = wm.getWidth() h = wm.getHeight() ww = message.getWindow().getWidth() hw = message.getWindow().getHeight() ox = (w - ww) / 2 oy = (h - hw) / 2 message.getWindow().setPosition(osgWidget.Point( osg.round(ox), osg.round(oy), message.getWindow().getPosition()[2]) ) # frame.resizeAdd(30, 30) # alpha = AlphaSetterVisitor(.8) # frame.accept(alpha) return osgWidget.createExample(viewer, wm) #osgDB.readNodeFile("cow.osgt"))
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, WINDOW_WIDTH, WINDOW_HEIGHT, MASK_2D ) menu = osgWidget.Box("menu", osgWidget.Box.HORIZONTAL) menu.addWidget(ColorLabelMenu("Choose EaseMotion")) menu.getBackground().setColor(1.0, 1.0, 1.0, 1.0) menu.setPosition(15.0, 15.0, 0.0) wm.addChild(menu) group = osg.Group() geode = osg.Geode() mt = osg.MatrixTransform() geode.addDrawable(osg.ShapeDrawable(osg.Sphere(osg.Vec3(), 4.0))) EASE_MOTION_SAMPLER = EaseMotionSampler(osg.Vec3(50.0, 0.0, 0.0)) EASE_MOTION_GEODE = osg.Geode() mt.addChild(geode) mt.setUpdateCallback(EASE_MOTION_SAMPLER) mt.setNodeMask(MASK_3D) viewer.setCameraManipulator(osgGA.TrackballManipulator()) viewer.getCameraManipulator().setHomePosition( osg.Vec3d(0.0, 0.0, 200.0), osg.Vec3d(20.0, 0.0, 0.0), osg.Vec3d(0.0, 1.0, 0.0) ) viewer.home() group.addChild(mt) group.addChild(EASE_MOTION_GEODE) return osgWidget.createExample(viewer, wm, group)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D, osgWidget.WindowManager.WM_PICK_DEBUG ) wm.setPointerFocusMode(osgWidget.WindowManager.PFM_SLOPPY) box1 = createBox("HBOX", osgWidget.Box.HORIZONTAL) box2 = createBox("VBOX", osgWidget.Box.VERTICAL) box3 = createBox("HBOX2", osgWidget.Box.HORIZONTAL) box4 = createBox("VBOX2", osgWidget.Box.VERTICAL) box1.getBackground().setColor(1.0, 0.0, 0.0, 0.8) box1.attachMoveCallback() box2.getBackground().setColor(0.0, 1.0, 0.0, 0.8) box2.attachMoveCallback() box3.getBackground().setColor(0.0, 0.0, 1.0, 0.8) box3.attachMoveCallback() wm.addChild(box1) wm.addChild(box2) wm.addChild(box3) wm.addChild(box4) box4.hide() model = osgDB.readNodeFile("spaceship.osgt") model.setNodeMask(MASK_3D) return osgWidget.createExample(viewer, wm, model)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D, osgWidget.WindowManager.WM_PICK_DEBUG ) canvas = osgWidget.Canvas("canvas") pOutline = osgWidget.Widget("pOutline", 512.0, 64.0) pMeter = osgWidget.Widget("pMeter", 0.0, 64.0) pLabel = osgWidget.Label("pLabel", "0% Done") pOutline.setImage("osgWidget/progress-outline.png", True) pOutline.setLayer(osgWidget.Widget.LAYER_MIDDLE, 2) pMeter.setImage("osgWidget/progress-meter.png") pMeter.setColor(0.7, 0.1, 0.1, 0.7) pMeter.setLayer(osgWidget.Widget.LAYER_MIDDLE, 1) pLabel.setFont("fonts/VeraMono.ttf") pLabel.setFontSize(20) pLabel.setFontColor(1.0, 1.0, 1.0, 1.0) pLabel.setSize(512.0, 64.0) pLabel.setLayer(osgWidget.Widget.LAYER_MIDDLE, 3) canvas.setOrigin(300.0, 300.0) canvas.addWidget(pMeter, 0.0, 0.0) canvas.addWidget(pOutline, 0.0, 0.0) canvas.addWidget(pLabel, 0.0, 0.0) canvas.getBackground().setColor(0.0, 0.0, 0.0, 0.0) canvas.setUpdateCallback(UpdateProgressNode()) wm.addChild(canvas) return osgWidget.createExample(viewer, wm, osgDB.readNodeFile("cow.osgt"))
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D ) box = osgWidget.Box("box", osgWidget.Box.VERTICAL) widget1 = osgWidget.Widget("w1", 200.0, 200.0) widget2 = osgWidget.Widget("w2", 100.0, 100.0) widget3 = osgWidget.Widget("w3", 0.0, 0.0) # CustomStyled* cs = CustomStyled() # Yep. wm.getStyleManager().addStyle(osgWidget.Style("widget.style1", STYLE1)) wm.getStyleManager().addStyle(osgWidget.Style("widget.style2", STYLE2)) wm.getStyleManager().addStyle(osgWidget.Style("spacer", STYLE3)) wm.getStyleManager().addStyle(osgWidget.Style("window", STYLE4)) # wm.getStyleManager().addStyle(CustomStyle("widget", "")) widget1.setStyle("widget.style1") widget2.setStyle("widget.style2") widget3.setStyle("spacer") box.setStyle("window") box.addWidget(widget1) box.addWidget(widget2) box.addWidget(widget3) wm.addChild(box) # box.resizePercent(0.0, 100.0) return osgWidget.createExample(viewer, wm)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager(viewer, 1280.0, 1024.0, MASK_2D) canvas = osgWidget.Canvas("canvas") canvas.attachMoveCallback() canvas.attachScaleCallback() canvas.addWidget(createWidget("w1", 0.2, osgWidget.Widget.LAYER_LOW), 0.0, 0.0) canvas.addWidget(createWidget("w2", 0.4, osgWidget.Widget.LAYER_MIDDLE), 200.0, 0.0) canvas.addWidget(createWidget("w3", 0.6, osgWidget.Widget.LAYER_HIGH), 400.0, 0.0) wm.addChild(canvas) program = osg.Program() program.addShader( osg.Shader.readShaderFile( osg.Shader.VERTEX, osgDB.findDataFile("osgWidget/osgwidgetshader-vert.glsl"))) program.addShader( osg.Shader.readShaderFile( osg.Shader.FRAGMENT, osgDB.findDataFile("osgWidget/osgwidgetshader-frag.glsl"))) canvas.getGeode().getOrCreateStateSet().setAttribute(program) return osgWidget.createExample(viewer, wm)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D, # osgWidget.WindowManager.WM_USE_RENDERBINS | osgWidget.WindowManager.WM_PICK_DEBUG ) box = osgWidget.Box("HBOX", osgWidget.Box.HORIZONTAL) vbox = osgWidget.Box("vbox", osgWidget.Box.VERTICAL) label1 = createLabel(LABEL1) label2 = createLabel(LABEL2) # Setup the labels for horizontal box. label1.setPadding(10.0) label2.setPadding(10.0) label1.addSize(21.0, 22.0) label2.addSize(21.0, 22.0) label1.setColor(1.0, 0.5, 0.0, 0.0) label2.setColor(1.0, 0.5, 0.0, 0.5) label2.setImage("Images/Brick-Norman-Brown.TGA", True) box.addWidget(label1) box.addWidget(label2) box.attachMoveCallback() box.attachScaleCallback() box.attachRotateCallback() # Setup the labels for the vertical box. label3 = createLabel("Label 3", 80) label4 = createLabel("Label 4", 60) label5 = createLabel("ABCDEFGHIJK", 93) label3.setPadding(3.0) label4.setPadding(3.0) label5.setPadding(3.0) label3.setColor(0.0, 0.0, 0.5, 0.5) label4.setColor(0.0, 0.0, 0.5, 0.5) label5.setColor(0.0, 0.0, 0.5, 0.5) #label5.setAlignHorizontal(osgWidget.Widget.HA_LEFT) #label5.setAlignVertical(osgWidget.Widget.VA_BOTTOM) # Test our label copy construction... label6 = osg.clone(label5, "label6", osg.CopyOp.DEEP_COPY_ALL) label6.setLabel("abcdefghijklmnopqrs") vbox.addWidget(label3) vbox.addWidget(label4) vbox.addWidget(label5) vbox.addWidget(label6) vbox.attachMoveCallback() vbox.attachScaleCallback() vbox.resize() # vbox.setVisibilityMode(osgWidget.Window.VM_ENTIRE) # vbox.setVisibleArea(50, 50, 500, 200) # vbox.setAnchorVertical(osgWidget.Window.VA_TOP) # vbox.setAnchorHorizontal(osgWidget.Window.HA_RIGHT) # Test our label-in-window copy construction... clonedBox = osg.clone(box, "HBOX-", osg.CopyOp.DEEP_COPY_ALL)() clonedBox.getBackground().setColor(0.0, 1.0, 0.0, 0.5) wm.addChild(box) wm.addChild(vbox) wm.addChild(clonedBox) return osgWidget.createExample(viewer, wm)
relWidget.setSize(0.2, 0.2) relWidget.setColor(0.5, 0.5, 0.1, 0.9) osgWidget.warn(), canvas.getWidth() canvas.addWidget(relWidget, 0.4, 0.4) relWidget.addOrigin(0.1, 0.1) relWidget.addSize(0.2, 0.2) canvas.resize() # Finally, add the whole thing to the WindowManager. wm.addChild(canvas) return osgWidget.createExample(viewer, wm) # #def main(argv): # # viewer = osgViewer.Viewer() # # wm = osgWidget.WindowManager( # viewer, # 1280.0, # 1024.0, # MASK_2D, # osgWidget.WindowManager.WM_PICK_DEBUG # ) # # canvas = osgWidget.Canvas("canvas")
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager(viewer, 1280.0, 1024.0, MASK_2D, osgWidget.WindowManager.WM_PICK_DEBUG) frame = osgWidget.Frame.createSimpleFrame("frame", 32.0, 32.0, 300.0, 300.0) frame2 = osgWidget.Frame.createSimpleFrameFromTheme( "frameTheme", osgDB.readImageFile("osgWidget/theme-1.png"), 300.0, 300.0, osgWidget.Frame.FRAME_ALL) frame2.setPosition(300, 100, 0) frame2.getBackground().setColor(1.0, 1.0, 1.0, 0.0) frame22 = osgWidget.Frame.createSimpleFrameFromTheme( "frameTheme", osgDB.readImageFile("osgWidget/theme-2.png"), 300.0, 300.0, osgWidget.Frame.FRAME_ALL) frame22.setPosition(300, 100, 0) frame22.getBackground().setColor(1.0, 1.0, 1.0, 0.0) frame3 = osgWidget.Frame.createSimpleFrameFromTheme( "frameTheme", osgDB.readImageFile("osgWidget/theme-2.png"), 300.0, 300.0, osgWidget.Frame.FRAME_ALL) frame3.setPosition(300, 100, 0) frame3.getBackground().setColor(0.0, 0.0, 0.0, 1.0) table = osgWidget.Table("table", 2, 2) bottom = osgWidget.Box("panel", osgWidget.Box.HORIZONTAL) table.addWidget(osgWidget.Widget("red", 300.0, 300.0), 0, 0) table.addWidget(osgWidget.Widget("white", 300.0, 300.0), 0, 1) table.addWidget(osgWidget.Widget("yellow", 300.0, 300.0), 1, 0) table.addWidget(osgWidget.Widget("purple", 300.0, 300.0), 1, 1) table.getByRowCol(0, 0).setColor(1.0, 0.0, 0.0, 1.0) table.getByRowCol(0, 1).setColor(1.0, 1.0, 1.0, 1.0) table.getByRowCol(1, 0).setColor(1.0, 1.0, 0.0, 1.0) table.getByRowCol(1, 1).setColor(1.0, 0.0, 1.0, 1.0) table.getByRowCol(0, 0).setMinimumSize(100.0, 100.0) table.getByRowCol(0, 1).setMinimumSize(100.0, 100.0) table.getByRowCol(1, 0).setMinimumSize(100.0, 100.0) table.getByRowCol(1, 1).setMinimumSize(100.0, 100.0) frame.setWindow(table) # Give frame some nice textures. # TODO: This has to be done after setWindow() wtf? frame.getBackground().setColor(0.0, 0.0, 0.0, 0.0) l = frame.getBorder(osgWidget.Frame.BORDER_LEFT) r = frame.getBorder(osgWidget.Frame.BORDER_RIGHT) t = frame.getBorder(osgWidget.Frame.BORDER_TOP) b = frame.getBorder(osgWidget.Frame.BORDER_BOTTOM) l.setImage("osgWidget/border-left.tga", True) r.setImage("osgWidget/border-right.tga", True) t.setImage("osgWidget/border-top.tga", True) b.setImage("osgWidget/border-bottom.tga", True) l.setTexCoordWrapVertical() r.setTexCoordWrapVertical() t.setTexCoordWrapHorizontal() b.setTexCoordWrapHorizontal() # Create the bottom, XArt panel. left = osgWidget.Widget("left", 512.0, 256.0) center = osgWidget.Widget("center", 256.0, 256.0) right = osgWidget.Widget("right", 512.0, 256.0) left.setImage("osgWidget/panel-left.tga", True) center.setImage("osgWidget/panel-center.tga", True) right.setImage("osgWidget/panel-right.tga", True) center.setTexCoordWrapHorizontal() bottom.addWidget(left) bottom.addWidget(center) bottom.addWidget(right) bottom.getBackground().setColor(0.0, 0.0, 0.0, 0.0) bottom.setOrigin(0.0, 1024.0 - 256.0) # Add everything to the WindowManager. wm.addChild(frame) wm.addChild(frame2) wm.addChild(frame22) wm.addChild(frame3) wm.addChild(bottom) return osgWidget.createExample(viewer, wm)
def main(argv): viewer = osgViewer.Viewer() wm = osgWidget.WindowManager( viewer, 1280.0, 1024.0, MASK_2D, osgWidget.WindowManager.WM_PICK_DEBUG ) frame = osgWidget.Frame.createSimpleFrame( "frame", 32.0, 32.0, 300.0, 300.0 ) frame2 = osgWidget.Frame.createSimpleFrameFromTheme( "frameTheme", osgDB.readImageFile("osgWidget/theme-1.png"), 300.0, 300.0, osgWidget.Frame.FRAME_ALL ) frame2.setPosition(300,100,0) frame2.getBackground().setColor(1.0, 1.0, 1.0, 0.0) frame22 = osgWidget.Frame.createSimpleFrameFromTheme( "frameTheme", osgDB.readImageFile("osgWidget/theme-2.png"), 300.0, 300.0, osgWidget.Frame.FRAME_ALL ) frame22.setPosition(300,100,0) frame22.getBackground().setColor(1.0, 1.0, 1.0, 0.0) frame3 = osgWidget.Frame.createSimpleFrameFromTheme( "frameTheme", osgDB.readImageFile("osgWidget/theme-2.png"), 300.0, 300.0, osgWidget.Frame.FRAME_ALL ) frame3.setPosition(300,100,0) frame3.getBackground().setColor(0.0, 0.0, 0.0, 1.0) table = osgWidget.Table("table", 2, 2) bottom = osgWidget.Box("panel", osgWidget.Box.HORIZONTAL) table.addWidget(osgWidget.Widget("red", 300.0, 300.0), 0, 0) table.addWidget(osgWidget.Widget("white", 300.0, 300.0), 0, 1) table.addWidget(osgWidget.Widget("yellow", 300.0, 300.0), 1, 0) table.addWidget(osgWidget.Widget("purple", 300.0, 300.0), 1, 1) table.getByRowCol(0, 0).setColor(1.0, 0.0, 0.0, 1.0) table.getByRowCol(0, 1).setColor(1.0, 1.0, 1.0, 1.0) table.getByRowCol(1, 0).setColor(1.0, 1.0, 0.0, 1.0) table.getByRowCol(1, 1).setColor(1.0, 0.0, 1.0, 1.0) table.getByRowCol(0, 0).setMinimumSize(100.0, 100.0) table.getByRowCol(0, 1).setMinimumSize(100.0, 100.0) table.getByRowCol(1, 0).setMinimumSize(100.0, 100.0) table.getByRowCol(1, 1).setMinimumSize(100.0, 100.0) frame.setWindow(table) # Give frame some nice textures. # TODO: This has to be done after setWindow() wtf? frame.getBackground().setColor(0.0, 0.0, 0.0, 0.0) l = frame.getBorder(osgWidget.Frame.BORDER_LEFT) r = frame.getBorder(osgWidget.Frame.BORDER_RIGHT) t = frame.getBorder(osgWidget.Frame.BORDER_TOP) b = frame.getBorder(osgWidget.Frame.BORDER_BOTTOM) l.setImage("osgWidget/border-left.tga", True) r.setImage("osgWidget/border-right.tga", True) t.setImage("osgWidget/border-top.tga", True) b.setImage("osgWidget/border-bottom.tga", True) l.setTexCoordWrapVertical() r.setTexCoordWrapVertical() t.setTexCoordWrapHorizontal() b.setTexCoordWrapHorizontal() # Create the bottom, XArt panel. left = osgWidget.Widget("left", 512.0, 256.0) center = osgWidget.Widget("center", 256.0, 256.0) right = osgWidget.Widget("right", 512.0, 256.0) left.setImage("osgWidget/panel-left.tga", True) center.setImage("osgWidget/panel-center.tga", True) right.setImage("osgWidget/panel-right.tga", True) center.setTexCoordWrapHorizontal() bottom.addWidget(left) bottom.addWidget(center) bottom.addWidget(right) bottom.getBackground().setColor(0.0, 0.0, 0.0, 0.0) bottom.setOrigin(0.0, 1024.0 - 256.0) # Add everything to the WindowManager. wm.addChild(frame) wm.addChild(frame2) wm.addChild(frame22) wm.addChild(frame3) wm.addChild(bottom) return osgWidget.createExample(viewer, wm)