Commit graph

4475 commits

Author SHA1 Message Date
Ghostkeeper
edcf7320f0
Interpret prime tower areas per extruder
The function gives results per extruder now, so we should interpret that instead of crashing.

Contributes to issue CURA-2625.
2016-11-11 17:00:32 +01:00
Ghostkeeper
a8d36c9116
Fix iteration over prime-disallowed areas
Oops. prime_disallowed_areas is a dictionary per extruder.

Contributes to issue CURA-2625.
2016-11-11 16:58:25 +01:00
Ghostkeeper
1c445a1512
Move computing disallowed areas to separate function
The results are checked for intersection in the main update function, and then it crashes because the main function doesn't expect per-extruder disallowed areas yet from the rest.

Contributes to issue CURA-2625.
2016-11-11 16:55:07 +01:00
Ghostkeeper
4b02171db6
Compute disallowed areas per-extruder
This computes the disallowed areas of the machine, the disallowed border and the prime tower per extruder. The prime locations are not yet calculated per extruder, but I'd like to extract it to a function before I try that.

Warning: Cura will not run at this stage. Please await the next commits.

Contributes to issue CURA-2625.
2016-11-11 16:26:58 +01:00
Ghostkeeper
3571ed2d7a
Expand disallowed border beyond build volume
This way we can offset it with the nozzle offset and it would still cover all the way to the edge. The disallowed areas are clipped to the build volume anyway.

Contributes to issue CURA-2625.
2016-11-11 15:44:53 +01:00
Ghostkeeper
ec057c72a6
Compute disallowed border size only once
We pass it on through a parameter instead of computing it again in the function.

Contributes to issue CURA-2625.
2016-11-11 15:16:43 +01:00
Ghostkeeper
bcd4dd3aeb
Fix applying skirt radius to prime locations
This makes the prime locations equal to what it was before.

Contributes to issue CURA-2625.
2016-11-11 15:14:15 +01:00
Ghostkeeper
45db315f77
Fix adding prime locations to final disallowed areas
They were added to several intermediary variables, but not to the final result.

Contributes to issue CURA-2625.
2016-11-11 15:10:39 +01:00
Ghostkeeper
ccccf62bf7
Repair showing build volume
We needed to apply the Minkowski hull on the polygon or it would be disjunct and wouldn't show up in the interface.

Contributes to issue CURA-2625.
2016-11-11 14:18:08 +01:00
Ghostkeeper
41c8371b86
Compute _has_errors only from _error_areas
This way we need fewer intermediary variables. It's also more robust and somewhat more elegant.

Contributes to issue CURA-2625.
2016-11-11 13:09:17 +01:00
Ghostkeeper
cfc9a7b6cf
Move prime tower area generation to separate function
This function is named as if it could later include other printed pieces, but it is meant to only include pieces that have normal bed adhesion, so not the prime locations.

Contributes to issue CURA-2625.
2016-11-11 13:03:34 +01:00
Ghostkeeper
a37ab8f4b1
Use approximated circle for the prime polygons
It's much easier to create, more obvious code, and better approximates the area that we seek to use for our prime location.

Contributes to issue CURA-2625.
2016-11-11 12:46:53 +01:00
Ghostkeeper
3d9eb4f2be
Move prime tower creation code closer to where it's used
The check for collisions is only at the end, and after that it adds the polygon itself. We should keep the code closer together to make it more readable.

Contributes to issue CURA-2625.
2016-11-11 12:01:08 +01:00
Ghostkeeper
42ee87c88f
Rename areas to result_areas
Because we have 'areas', 'disallowed_areas', 'self._disallowed_areas', 'disallowed_polygons', and so on. This should reduce the confusion a bit.

Contributes to issue CURA-2625.
2016-11-11 11:54:50 +01:00
Ghostkeeper
77a6c459d8
Move initialisation of areas closer to where it's used
Makes the code more easy to follow.

Contributes to issue CURA-2625.
2016-11-11 11:53:13 +01:00
Ghostkeeper
b6611b66f8
Remove unused intermediary value
This is not used, unless you take multi-threading into account. In that case though, the actual disallowed areas are only updated at the end of this function, and the _has_errors variable is updated right before then as well, so this way the variable is in an invalid state for a smaller amount of time.

Contributes to issue CURA-2625.
2016-11-11 11:51:32 +01:00
Ghostkeeper
49c5a90d29
Remove unused variable
This one is now moved to the _computeDisallowedAreasStatic function.

Contributes to issue CURA-2625.
2016-11-11 11:48:03 +01:00
Ghostkeeper
1603930c5c
Extract computing static disallowed areas to different function
These disallowed areas will have to move or get duplicated according to which nozzles are used. Eventually we'll want to compute these with their Minkowski additions only when needed (the skirt size changes), not when the used extruders change. This is also part of an effort to make this disallowed area computation a bit better structured. The behaviour should be the same.

Contributes to issue CURA-2625.
2016-11-11 11:41:55 +01:00
Ghostkeeper
14e736d9eb
Add function to find the extruders that are used
These are the extruders that are being used by the scene if it would currently be printed. You can ask the extruder stacks for stuff like the nozzle offset. This way we can determine the disallowed areas per extruder.

Contributes to issue CURA-2625.
2016-11-10 19:31:02 +01:00
fieldOfView
236723fc8d Remove unused required argument on _startCamera and _stopCamera
(they were probably there due to a copy/paste error, see _setJobState)
CURA-2411
2016-11-09 16:20:34 +01:00
Jaime van Kessel
304696c809 OutputDevices now take file_handler into account
CURA-1263
2016-11-09 14:03:57 +01:00
fieldOfView
6752a18435 Add dialog to set number of copies when duplicating models 2016-11-07 14:02:19 +01:00
Tim Kuipers
e51f9ba678 fix: exclude command line settings from being viewed in the frontend (CURA-566) 2016-11-07 11:54:47 +01:00
Jaime van Kessel
e7df64da8b Fixed merging for already grouped objects 2016-11-07 11:19:03 +01:00
Jaime van Kessel
867463f718 InheritanceManager now checks if a setting function can actually change before labeling it
CURA-2860
2016-11-04 15:59:01 +01:00
Jaime van Kessel
2eb1c61033 Merge branch 'feature_drag_curaprofile' of github.com:Ultimaker/Cura 2016-11-04 14:31:58 +01:00
Jaime van Kessel
720f37b17f Quality changes can now only be removed if they are not in use anywere
CURA-2846
2016-11-04 10:02:13 +01:00
Jaime van Kessel
c769a05408 Added start & stop camera interface
CURA-2411
2016-11-04 09:41:26 +01:00
Jaime van Kessel
8b4cdedd89 Fixed loading files from command line 2016-11-03 15:07:38 +01:00
Simon Edwards
cadf2115ac Merge pull request #1058 from Ultimaker/cura-2730
Changed MachineManager.isActiveStackValid to areStacksValid. CURA-2730
2016-11-01 16:17:04 +01:00
Ghostkeeper
0fa93f2214 Merge branch '2.3' 2016-10-31 17:26:51 +01:00
Simon Edwards
21f1b12ee8 Internal docs.
CURA-2852 Activating customised material will not duplicate UM2+ profiles
2016-10-31 16:03:40 +01:00
Jaime van Kessel
d897392eea Merge branch '2.3' of github.com:Ultimaker/Cura 2016-10-31 15:46:31 +01:00
Jaime van Kessel
41ed9661f6 FindQUalityByName now also uses fallback generic materials if no result was found
CURA-2852
2016-10-31 15:43:53 +01:00
Simon Edwards
1fbd179aaa Merge branch '2.3' 2016-10-31 13:30:20 +01:00
Simon Edwards
e74953c8bc Internal docs.
CURA-2823 Maximum build volume not met despite disabled settings
2016-10-31 13:29:54 +01:00
Ghostkeeper
9a8a5db06e
Fix documentation for getAllExtruderSettings
Didn't complete it previously. Oops.

Contributes to issue CURA-2823.
2016-10-31 12:41:29 +01:00
Ghostkeeper
6999a14821
Merge branch '2.3' 2016-10-31 10:55:54 +01:00
Thomas Karl Pietrowski
aa92428c04 Cleanup: Remove debug print 2016-10-30 16:45:45 +01:00
Jaime van Kessel
fe014efdfb SetParentOperation now also takes removed group nodes into account
CURA-382
2016-10-28 15:44:20 +02:00
Ghostkeeper
2760055e89
Use settings from all extruders for radius of moves from walls
It computes the maximum move distance from the outer walls for all extruders, not just the platform adhesion extruder.

Contributes to issue CURA-2823.
2016-10-28 15:20:13 +02:00
Ghostkeeper
d5ba89a026
Add function to get other properties than values from all extruders
I've made sure that the behaviour of getAllExtruderValues remains the same, so that this function may still be used by other pieces of code. It is now just a special case of getAllExtruderSettings. Please suggest a better naming scheme, if you like.

Contributes to issue CURA-2823.
2016-10-28 15:20:13 +02:00
Jaime van Kessel
83315f13b3 SetParent now correctly uses transformations
This is different from the old way of setting scale / rotation & position in sequence.
The assumption in that case only held if all spaces had the same axis orientations (which is not the case for 3MF)

Contributes to CURA-382
2016-10-28 15:07:35 +02:00
Jaime van Kessel
78ab1f1a71 Merge branch '2.3' of github.com:Ultimaker/Cura into 2.3 2016-10-28 14:50:07 +02:00
Jaime van Kessel
af10438277 Fixed blurSetting
CURA-2835
2016-10-28 14:49:42 +02:00
Jaime van Kessel
75be8080ec Platform physics now set the absolute position, instead of transforming in local space
This fixes issues with 3MF, which don't share the same local coordinate space.
CURA-382
2016-10-28 13:53:24 +02:00
Jaime van Kessel
70a33d9dc5 Fixed drop to buildplate issue with 3mf
CURA-382
2016-10-28 13:44:52 +02:00
Ghostkeeper
d33f6d2e44
Make regex match exactly on entire string
The carot indicates start of string, the dollar the end of string. So it must match on the entire string, not a piece of it.

Contributes to issue CURA-2692.
2016-10-28 13:33:36 +02:00
Ghostkeeper
4ef2caddf5
Remove debug prints
Oops.

Contributes to issue CURA-2692.
2016-10-28 13:33:36 +02:00
Jaime van Kessel
28eb4297c6 Merge branch '2.3' of github.com:Ultimaker/Cura 2016-10-28 11:38:13 +02:00