Skip to content

Implement facelist property#237

Open
pasbi wants to merge 31 commits intomainfrom
implement-facelist-property
Open

Implement facelist property#237
pasbi wants to merge 31 commits intomainfrom
implement-facelist-property

Conversation

@pasbi
Copy link
Owner

@pasbi pasbi commented Mar 11, 2022

No description provided.

@pasbi pasbi force-pushed the implement-facelist-property branch from d7189e4 to 4e8cb3a Compare March 13, 2022 22:23
Pascal Bies added 15 commits March 30, 2022 23:45
# Conflicts:
#	src/properties/splineproperty.cpp
#	src/properties/splineproperty.h
#	src/serializers/abstractserializer.h
#	src/serializers/jsonserializer.cpp
#	src/serializers/jsonserializer.h
That requires some re-implementation of QPainterPath features, like
`constains`.
The usage of `QPainterPath::operator-` has been replaced by
`Face::operator^` because it's easier to implement and gives the same
result if one path contains the other.
# Conflicts:
#	src/path/face.cpp
#	src/path/face.h
#	src/properties/CMakeLists.txt
#	src/properties/splineproperty.cpp
#	src/propertytypeenum.h
#	src/renderers/offscreenrenderer.cpp
#	src/variant.h
@pasbi pasbi force-pushed the implement-facelist-property branch from 4c3284c to c53cce5 Compare April 1, 2022 19:48
@pasbi pasbi added bug Something isn't working geometry related to geometry, graphs, faces, points, edges, etc. and removed bug Something isn't working geometry related to geometry, graphs, faces, points, edges, etc. labels Apr 2, 2022
Pascal Bies added 7 commits April 7, 2022 16:24
Face operator^ is principally impossible to implement because
edges don't have an identity (there might be multiple indistinguishable
edges between two points).

Therefore, PathVector::faces is simpler now. It's still not correct,
but the (now removed) complicated implementation (employing operator^)
wouldn't make it better.
Simple and wrong is better than complicated and wrong.

Fixing it properly probably requires a complete change of paradigms
(i.e., identifiable edges)
That's going to be fixed on another branch `edge-identity`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant