本文整理汇总了Python中bgl.glColor4f方法的典型用法代码示例。如果您正苦于以下问题:Python bgl.glColor4f方法的具体用法?Python bgl.glColor4f怎么用?Python bgl.glColor4f使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类bgl
的用法示例。
在下文中一共展示了bgl.glColor4f方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: draw_callback_text
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_callback_text(self):
obj = bpy.context.active_object
### draw text for edge length detection
if self.shift and self.point_type == "EDGE":
p1 = obj.matrix_world * self.verts_edges_data[0]
p2 = obj.matrix_world * self.verts_edges_data[1]
length = (p1-p2).magnitude
font_id = 0
line = str(round(length,2))
bgl.glEnable(bgl.GL_BLEND)
bgl.glColor4f(1,1,1,1)
blf.position(font_id, self.mouse_2d_x-15, self.mouse_2d_y+30, 0)
blf.size(font_id, 20, 72)
blf.draw(font_id, line)
if self.mode == "EDIT_MESH":
draw_edit_mode(self,bpy.context,color=[1.0, 0.39, 0.41, 1.0],text="Edit Mesh Mode",offset=-20)
elif self.mode == "DRAW_BONE_SHAPE":
draw_edit_mode(self,bpy.context,color=[1.0, 0.39, 0.41, 1.0],text="Draw Bone Shape",offset=-20)
示例2: draw_line
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_line(p1, p2, color, shadow=False, shadow_color=None):
bgl.glEnable(bgl.GL_BLEND)
bgl.glEnable(bgl.GL_LINE_SMOOTH)
# Draw shadow.
if shadow:
bgl.glLineWidth(3.0)
bgl.glColor4f(*shadow_color, 1.0)
bgl.glBegin(bgl.GL_LINES)
bgl.glVertex2f(*p1)
bgl.glVertex2f(*p2)
bgl.glEnd()
# Draw line.
bgl.glLineWidth(1.5 if shadow else 1.0)
bgl.glColor3f(*color)
bgl.glBegin(bgl.GL_LINES)
bgl.glVertex2f(*p1)
bgl.glVertex2f(*p2)
bgl.glEnd()
bgl.glLineWidth(1.0)
bgl.glDisable(bgl.GL_LINE_SMOOTH)
示例3: draw_callback_px
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_callback_px(self, context):
print("mouse points", len(self.mouse_path))
font_id = 0 # XXX, need to find out how best to get this.
# draw some text
blf.position(font_id, 15, 30, 0)
blf.size(font_id, 20, 72)
blf.draw(font_id, "Hello Word " + str(len(self.mouse_path)))
# 50% alpha, 2 pixel width line
bgl.glEnable(bgl.GL_BLEND)
bgl.glColor4f(0.0, 0.0, 0.0, 0.5)
bgl.glLineWidth(2)
bgl.glBegin(bgl.GL_LINE_STRIP)
for x, y in self.mouse_path:
bgl.glVertex2i(x, y)
bgl.glEnd()
# restore opengl defaults
bgl.glLineWidth(1)
bgl.glDisable(bgl.GL_BLEND)
bgl.glColor4f(0.0, 0.0, 0.0, 1.0)
示例4: draw_offset
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_offset(self, context):
bgl.glShadeModel(bgl.GL_SMOOTH)
tfm_operator = CursorDynamicSettings.active_transform_operator
bgl.glBegin(bgl.GL_LINE_STRIP)
if tfm_operator:
p = tfm_operator.particles[0]. \
get_initial_matrix().to_translation()
else:
p = self.get_pos(self.last_id)
bgl.glColor4f(1.0, 0.75, 0.5, 1.0)
bgl.glVertex3f(p[0], p[1], p[2])
p = get_cursor_location(v3d=context.space_data)
bgl.glColor4f(1.0, 1.0, 0.25, 1.0)
bgl.glVertex3f(p[0], p[1], p[2])
bgl.glEnd()
# ===== BOOKMARK ===== #
示例5: __draw_ctrl_point
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def __draw_ctrl_point(self, context, pos):
"""
Draw control point
"""
cp_size = context.scene.muv_uvbb_cp_size
offset = cp_size / 2
verts = [
[pos.x - offset, pos.y - offset],
[pos.x - offset, pos.y + offset],
[pos.x + offset, pos.y + offset],
[pos.x + offset, pos.y - offset]
]
bgl.glEnable(bgl.GL_BLEND)
bgl.glBegin(bgl.GL_QUADS)
bgl.glColor4f(1.0, 1.0, 1.0, 1.0)
for (x, y) in verts:
bgl.glVertex2f(x, y)
bgl.glEnd()
示例6: DrawCenterText
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def DrawCenterText(text, xt, yt, Size, Color, self):
font_id = 0
# Decalage Ombre
Sshadow_x = 2
Sshadow_y = -2
blf.size(font_id, Size, 72)
blf.position(font_id, xt + Sshadow_x - blf.dimensions(font_id, text)[0] / 2, yt + Sshadow_y, 0)
bgl.glColor4f(0.0, 0.0, 0.0, 1.0)
blf.draw(font_id, text)
blf.position(font_id, xt - blf.dimensions(font_id, text)[0] / 2, yt, 0)
if Color is not None:
mColor = mathutils.Color((Color[0], Color[1], Color[2]))
bgl.glColor4f(mColor.r, mColor.g, mColor.b, 1.0)
else:
bgl.glColor4f(1.0, 1.0, 1.0, 1.0)
blf.draw(font_id, text)
# Draw text (Left position)
示例7: DrawLeftText
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def DrawLeftText(text, xt, yt, Size, Color, self):
font_id = 0
# Decalage Ombre
Sshadow_x = 2
Sshadow_y = -2
blf.size(font_id, Size, 72)
blf.position(font_id, xt + Sshadow_x, yt + Sshadow_y, 0)
bgl.glColor4f(0.0, 0.0, 0.0, 1.0)
blf.draw(font_id, text)
blf.position(font_id, xt, yt, 0)
if Color is not None:
mColor = mathutils.Color((Color[0], Color[1], Color[2]))
bgl.glColor4f(mColor.r, mColor.g, mColor.b, 1.0)
else:
bgl.glColor4f(1.0, 1.0, 1.0, 1.0)
blf.draw(font_id, text)
# Draw text (Right position)
示例8: draw_outline_or_region
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_outline_or_region(mode, points, color):
'''
draws and outline or region
mode: either bgl.GL_POLYGON or bgl.GL_LINE_LOOP
color: will need to be set beforehand using theme colors. eg
bgl.glColor4f(self.ri, self.gi, self.bi, self.ai)
return: None
'''
bgl.glColor4f(color[0],color[1],color[2],color[3])
if mode == 'GL_LINE_LOOP':
bgl.glBegin(bgl.GL_LINE_LOOP)
else:
bgl.glEnable(bgl.GL_BLEND)
bgl.glBegin(bgl.GL_POLYGON)
# start with corner right-bottom
for i in range(0,len(points)):
bgl.glVertex2f(points[i][0],points[i][1])
bgl.glEnd()
示例9: draw_callback_px
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_callback_px(self, context):
"""From blender's operator_modal_draw.py modal operator template"""
if self.do_draw:
bgl.glEnable(bgl.GL_BLEND)
bgl.glEnable(bgl.GL_LINE_STIPPLE)
bgl.glColor4f(0.0, 0.0, 0.0, 1.0)
bgl.glLineWidth(1)
bgl.glBegin(bgl.GL_LINE_STRIP)
bgl.glVertex2i(int(self.draw_start.x), int(self.draw_start.y))
bgl.glVertex2i(int(self.draw_end.x), int(self.draw_end.y))
bgl.glEnd()
# restore opengl defaults
bgl.glLineWidth(1)
bgl.glDisable(bgl.GL_BLEND)
bgl.glDisable(bgl.GL_LINE_STIPPLE)
bgl.glColor4f(0.0, 0.0, 0.0, 1.0)
示例10: _draw
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def _draw(self):
l,t = self.pos
w,h = self.size
if debug_draw:
bgl.glEnable(bgl.GL_BLEND)
bgl.glBegin(bgl.GL_QUADS)
bgl.glColor4f(0,1,1,0.5)
bgl.glVertex2f(l, t)
bgl.glVertex2f(l, t - h)
bgl.glVertex2f(l + w, t - h)
bgl.glVertex2f(l + w, t)
bgl.glEnd()
if self.background:
bgl.glEnable(bgl.GL_BLEND)
bgl.glColor4f(*self.background)
bgl.glBegin(bgl.GL_QUADS)
bgl.glVertex2f(l, t)
bgl.glVertex2f(l+w, t)
bgl.glVertex2f(l+w, t-h)
bgl.glVertex2f(l, t-h)
bgl.glEnd()
示例11: draw_darken
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_darken(self):
bgl.glPushAttrib(bgl.GL_ALL_ATTRIB_BITS)
bgl.glMatrixMode(bgl.GL_PROJECTION)
bgl.glPushMatrix()
bgl.glLoadIdentity()
bgl.glColor4f(0,0,0,0.25) # TODO: use window background color??
bgl.glEnable(bgl.GL_BLEND)
bgl.glDisable(bgl.GL_DEPTH_TEST)
bgl.glBegin(bgl.GL_QUADS) # TODO: not use immediate mode
bgl.glVertex2f(-1, -1)
bgl.glVertex2f( 1, -1)
bgl.glVertex2f( 1, 1)
bgl.glVertex2f(-1, 1)
bgl.glEnd()
bgl.glPopMatrix()
bgl.glPopAttrib()
示例12: mi_draw_2d_point
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def mi_draw_2d_point(point_x, point_y, p_size=4, p_col=(1.0,1.0,1.0,1.0)):
bgl.glEnable(bgl.GL_BLEND)
#bgl.glColor4f(1.0, 1.0, 1.0, 0.5)
#bgl.glLineWidth(2)
bgl.glPointSize(p_size)
# bgl.glBegin(bgl.GL_LINE_LOOP)
bgl.glBegin(bgl.GL_POINTS)
# bgl.glBegin(bgl.GL_POLYGON)
bgl.glColor4f(p_col[0], p_col[1], p_col[2], p_col[3])
bgl.glVertex2f(point_x, point_y)
bgl.glEnd()
# restore opengl defaults
bgl.glLineWidth(1)
bgl.glDisable(bgl.GL_BLEND)
bgl.glColor4f(0.0, 0.0, 0.0, 1.0)
# TODO MOVE TO UTILITIES
示例13: mi_curve_draw_3d_polyline
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def mi_curve_draw_3d_polyline(points, p_size, p_col, x_ray):
bgl.glEnable(bgl.GL_BLEND)
bgl.glLineWidth(1)
if x_ray is True:
bgl.glDisable(bgl.GL_DEPTH_TEST)
bgl.glPointSize(p_size)
# bgl.glBegin(bgl.GL_LINE_LOOP)
bgl.glBegin(bgl.GL_LINE_STRIP)
bgl.glColor4f(p_col[0], p_col[1], p_col[2], p_col[3])
# bgl.glBegin(bgl.GL_POLYGON)
for point in points:
bgl.glVertex3f(point[0], point[1], point[2])
if x_ray is True:
bgl.glEnable(bgl.GL_DEPTH_TEST)
bgl.glEnd()
# restore opengl defaults
bgl.glLineWidth(1)
bgl.glDisable(bgl.GL_BLEND)
bgl.glColor4f(0.0, 0.0, 0.0, 1.0)
示例14: draw_3d_polyline
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_3d_polyline(points, p_size, p_col, x_ray):
bgl.glEnable(bgl.GL_BLEND)
bgl.glLineWidth(1)
if x_ray is True:
bgl.glDisable(bgl.GL_DEPTH_TEST)
bgl.glPointSize(p_size)
# bgl.glBegin(bgl.GL_LINE_LOOP)
bgl.glBegin(bgl.GL_LINE_STRIP)
bgl.glColor4f(p_col[0], p_col[1], p_col[2], p_col[3])
# bgl.glBegin(bgl.GL_POLYGON)
for point in points:
bgl.glVertex3f(point[0], point[1], point[2])
if x_ray is True:
bgl.glEnable(bgl.GL_DEPTH_TEST)
bgl.glEnd()
# restore opengl defaults
bgl.glLineWidth(1)
bgl.glDisable(bgl.GL_BLEND)
bgl.glColor4f(0.0, 0.0, 0.0, 1.0)
示例15: draw_2d_point
# 需要导入模块: import bgl [as 别名]
# 或者: from bgl import glColor4f [as 别名]
def draw_2d_point(point_x, point_y, p_size=4, p_col=(1.0,1.0,1.0,1.0)):
bgl.glEnable(bgl.GL_BLEND)
#bgl.glColor4f(1.0, 1.0, 1.0, 0.5)
#bgl.glLineWidth(2)
bgl.glPointSize(p_size)
coords = ((point_x, point_y), (point_x, point_y))
batch = batch_for_shader(shader2d, 'POINTS', {"pos": coords})
shader2d.bind()
shader2d.uniform_float("color", (p_col[0], p_col[1], p_col[2], p_col[3]))
batch.draw(shader2d)
# bgl.glBegin(bgl.GL_POINTS)
# bgl.glColor4f(p_col[0], p_col[1], p_col[2], p_col[3])
# bgl.glVertex2f(point_x, point_y)
# bgl.glEnd()
# restore opengl defaults
bgl.glLineWidth(1)
bgl.glDisable(bgl.GL_BLEND)