Skip to content

Commit 8a47f72

Browse files
committed
use contrastcolor as default for mesh edges and vertices
1 parent 198326a commit 8a47f72

File tree

2 files changed

+18
-3
lines changed

2 files changed

+18
-3
lines changed

src/compas/scene/meshobject.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,13 @@ def __init__(self, mesh, **kwargs):
6060
self._mesh = None
6161
self._vertex_xyz = None
6262
self.mesh = mesh
63-
self.vertexcolor = kwargs.get("vertexcolor", self.color)
64-
self.edgecolor = kwargs.get("edgecolor", self.color)
63+
self.vertexcolor = kwargs.get("vertexcolor", self.contrastcolor)
64+
self.edgecolor = kwargs.get("edgecolor", self.contrastcolor)
6565
self.facecolor = kwargs.get("facecolor", self.color)
6666
self.vertexsize = kwargs.get("vertexsize", 1.0)
6767
self.edgewidth = kwargs.get("edgewidth", 1.0)
6868
self.show_vertices = kwargs.get("show_vertices", False)
69-
self.show_edges = kwargs.get("show_edges", True)
69+
self.show_edges = kwargs.get("show_edges", False)
7070
self.show_faces = kwargs.get("show_faces", True)
7171

7272
@property

src/compas/scene/sceneobject.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
from .descriptors.color import ColorAttribute
88
from .context import clear
99
from .context import get_sceneobject_cls
10+
from compas.colors import Color
1011
from compas.geometry import Transformation
1112
from functools import reduce
1213
from operator import mul
@@ -68,6 +69,7 @@ def __init__(self, item, **kwargs):
6869
self._node = None
6970
self._frame = kwargs.get("frame", None)
7071
self._transformation = kwargs.get("transformation", None)
72+
self._contrastcolor = None
7173
self.name = kwargs.get("name", item.name or item.__class__.__name__)
7274
self.color = kwargs.get("color", self.color)
7375
self.opacity = kwargs.get("opacity", 1.0)
@@ -132,6 +134,19 @@ def worldtransformation(self):
132134

133135
return worldtransformation
134136

137+
@property
138+
def contrastcolor(self):
139+
if not self._contrastcolor:
140+
if self.color.is_light:
141+
self._contrastcolor = self.color.darkened(50)
142+
else:
143+
self._contrastcolor = self.color.lightened(50)
144+
return self._contrastcolor
145+
146+
@contrastcolor.setter
147+
def contrastcolor(self, color):
148+
self._contrastcolor = Color.coerce(color)
149+
135150
def add(self, item, **kwargs):
136151
"""Add a child item to the scene object.
137152

0 commit comments

Comments
 (0)