def drawSelf(self): if self._tex is None: filename = os.path.join("toolicons", "compass.png") self._tex = loadPNGTexture(filename) self._tex.bind() size = 0.001 * config.settings.compassSize.get() with gl.glPushMatrix(GL.GL_MODELVIEW): GL.glLoadIdentity() yaw, pitch = self.yawPitch if config.settings.viewMode.get() == "Chunk": yaw = -180 GL.glTranslatef(1. - (size + self.x), size + self.y, 0.0) # position on upper right corner GL.glRotatef(180 - yaw, 0., 0., 1.) # adjust to north GL.glColor3f(1., 1., 1.) with gl.glEnableClientState(GL.GL_TEXTURE_COORD_ARRAY): GL.glVertexPointer(2, GL.GL_FLOAT, 0, makeQuad(-size, -size, 2 * size, 2 * size)) GL.glTexCoordPointer(2, GL.GL_FLOAT, 0, makeQuad(0, 0, 256, 256)) with gl.glEnable(GL.GL_BLEND, GL.GL_TEXTURE_2D): GL.glDrawArrays(GL.GL_QUADS, 0, 4)
def drawSelf(self): if self._tex is None: filename = os.path.join("toolicons", "compass.png") self._tex = loadPNGTexture(filename) self._tex.bind() size = 0.001 * config.settings.compassSize.get() with gl.glPushMatrix(GL.GL_MODELVIEW): GL.glLoadIdentity() yaw, pitch = self.yawPitch if config.settings.viewMode.get() == "Chunk": yaw = -180 GL.glTranslatef(1. - size, size, 0.0) # position on upper right corner GL.glRotatef(180 - yaw, 0., 0., 1.) # adjust to north GL.glColor3f(1., 1., 1.) with gl.glEnableClientState(GL.GL_TEXTURE_COORD_ARRAY): GL.glVertexPointer(2, GL.GL_FLOAT, 0, makeQuad(-size, -size, 2 * size, 2 * size)) GL.glTexCoordPointer(2, GL.GL_FLOAT, 0, makeQuad(0, 0, 256, 256)) with gl.glEnable(GL.GL_BLEND, GL.GL_TEXTURE_2D): GL.glDrawArrays(GL.GL_QUADS, 0, 4)
def drawSelf(self): if self._tex is None: if self.small: filename = "compass_small.png" else: filename = "compass.png" self._tex = loadPNGTexture("toolicons/" + filename)#, minFilter=GL.GL_LINEAR, magFilter=GL.GL_LINEAR) self._tex.bind() size = 0.075 with gl.glPushMatrix(GL.GL_MODELVIEW): GL.glLoadIdentity() yaw, pitch = self.yawPitch GL.glTranslatef(1.-size, size, 0.0) # position on upper right corner GL.glRotatef(180-yaw, 0., 0., 1.) # adjust to north GL.glColor3f(1., 1., 1.) with gl.glEnableClientState(GL.GL_TEXTURE_COORD_ARRAY): GL.glVertexPointer(2, GL.GL_FLOAT, 0, makeQuad(-size, -size, 2*size, 2*size)) GL.glTexCoordPointer(2, GL.GL_FLOAT, 0, makeQuad(0, 0, 256, 256)) with gl.glEnable(GL.GL_BLEND, GL.GL_TEXTURE_2D): GL.glDrawArrays(GL.GL_QUADS, 0, 4)
def render(self): self.viewingFrustum = frustum.Frustum.fromViewingMatrix() if self.superSecretSettings: self.editor.drawStars() if self.drawSky: self.drawSkyBackground() if self.drawFog: self.enableFog() self.drawFloorQuad() self.editor.renderer.viewingFrustum = self.viewingFrustum self.editor.renderer.draw() if self.showCeiling and not self.editor.renderer.inSpace(): self.drawCeiling() if self.editor.level: if pygame.key.get_focused(): try: self.updateBlockFaceUnderCursor() except (EnvironmentError, pymclevel.ChunkNotPresent) as e: logging.debug("Updating cursor block: %s", e) self.blockFaceUnderCursor = (None, None) self.root.update_tooltip() (blockPosition, faceDirection) = self.blockFaceUnderCursor if None != blockPosition: self.editor.updateInspectionString(blockPosition) if self.find_widget(mouse.get_pos()) == self: ct = self.editor.currentTool if ct: ct.drawTerrainReticle() ct.drawToolReticle() else: self.editor.drawWireCubeReticle() for t in self.editor.toolbar.tools: t.drawTerrainMarkers() t.drawToolMarkers() if self.drawFog: self.disableFog() if self._compass is None: self._compass = CompassOverlay() self._compass.yawPitch = self.yaw, 0 with gl.glPushMatrix(GL.GL_PROJECTION): GL.glLoadIdentity() GL.glOrtho(0., 1., float(self.height) / self.width, 0, -200, 200) self._compass.draw()