5axes / nameit Goto Github PK
View Code? Open in Web Editor NEWCura Plugin to add Identification text to printing Part
License: GNU General Public License v3.0
Cura Plugin to add Identification text to printing Part
License: GNU General Public License v3.0
Thank you, this extension makes our workflow so much more productive!
Feature Request - Is it possible to engrave/deboss the letters rather than have them embossed? Something like a negative text height?
Reason - The Name It ID's usually get placed on our rafts. If the ID was engraved into the raft, it would be completed before the actual part and have zero impact on the actual print in terms of travels away from the print and the potential for stringing. We also print our first layers very thin with adaptive layer height for curvature and detail reasons. It would be nice if the text was engraved into the thick and robust raft layers rather than embossed with the thin and wispy wall settings of a detailed part.
steps to reproduce:
Every other following adding of a number or name ID's or Names the previous identifiers as well.
I can imagine a usecase that requires both number and name, but not multiple uses of name AND id.
Might be cleaner to use it as a toggle. 'name' adds or removes the name of the file. 'id' adds or removes the id.
When adding the new nodes that contain the text, they are added as individual items in the "undo / redo" stack. So if you add the name to 5 items at once, you have to undo it 5 times to get back to the same result.
Since this is the result of a single user action (The user pressed a single button), it would make more sense to me to have a single undo result in all of the names being removed.
You can do this by creating a single "GroupedOperation" and add all the other operations to that operation. Only the GroupedOperation needs to be pushed to the OperationStack.
In a futur release, possibility of enhancement: add optional prefix and suffix to the number identification
Hi @5axes !
We (UltiMaker, or the Cura team at least) wanted to send an update w.r.t. the new SDK, but the email address ([email protected]
) you've listed in the plugin(submission form)s bounces.
Cheers!
To avoid re-sending it, I've also listed it here:
Dear Cura-plugin Contributor,
This mail is to inform you that, for the upcoming Cura version (5.2.x), we're bumping the SDK/API version to '8.2.0' (was '8.1.0').
You were sent this mail because this mail-address was given to us as the correspondence address on at least one currently active Cura plugin.
Since this is a minor increase, there shouldn't be any breaking changes. Nevertheless, you may want to update, depending on whether the added classes or updated function signatures (added optional parameters or type-checking) are of use to your plugin.
Publicly available added classes and changed functions in Uranium and Cura since 5.1.1 are:
cura/Machines/Models/CompatibleMachineModel.py
<new class>
cura/API/Account.py
+ permissionsChanged = pyqtSignal()
+ def permissions(self) -> List[str]:
cura/Machines/Models/GlobalStacksModel.py
+ def setFilterAbstractMachines(self, new_filter: Optional[bool]) -> None:
+ def filterAbstractMachines(self) -> Optional[bool]:
cura/PrinterOutput/Models/PrintJobOutputModel.py
+ def isMine(self) -> bool:
cura/Settings/CuraStackBuilder.py
+ def createUserContainer(cls, new_stack_id: str, definition: DefinitionContainerInterface,stack: GlobalStack,
variant_container: "InstanceContainer",
material_container: "InstanceContainer",
quality_container: "InstanceContainer"):
+ def createAbstractMachine(cls, definition_id: str) -> Optional[GlobalStack]:
cura/Settings/GlobalStack.py
+ def hasNetworkedConnection(self) -> bool:
cura/Settings/MachineManager.py
+ def getMachinesWithDefinition(self, definition_id: str, online_only=False) -> List[ContainerStack]:
+ def activeMachineIsAbstractCloudPrinter(self) -> bool:
cura/resources/qml/Dialogs/ChoosePrinterDialog.qml
<new class>
cura/resources/qml/PrinterSelector/MachineListButton.qml
<new class>
cura/resources/qml/PrinterSelector/PrintSelectorCard.qml
<new class>
cura/resources/qml/Menus/Configurationmenu/CustomConfiguration.qml
Removed printerTypeSelectorRow and all sub-items
cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml
Added property ignoreValueChange to infillSlider item
UM/Settings/InstanceContainer.py
+ def createMergedInstanceContainer(cls, instance_container1: "InstanceContainer",instance_container2: "InstanceContainer") -> "InstanceContainer":
newly deprecated in 5.2 (these will be removed at some point in the future):
* cura/API/Account.py
"Get permissions from the 'permissions' property"
def updateAdditionalRight(self, **kwargs) -> None:
* cura/API/Account.py
"Get permissions from the 'permissions' property"
def additionalRights(self) -> Dict[str, Any]:
* UM/Qt/QtApplication.py
"Showing toast messages is no longer supported"
def showToastMessage(self, title: str, message: str) -> None:
It would be awesome if this could print the first X characters of the file name, or custom labels that could be input manually.
Added a custom setting with an "Initial layer speed" dedicated to printing letters.
Originally posted by CZKR December 31, 2022
After trying for 30 minutes to get the NameIt plugin to work, figuring that this plugin might work similar to the TabAntiWarp plugin via the side controls (nope) because that's the first 5axes plugin I installed, and then reading through the GitHub wiki information and still getting no results, I decided I must be doing something wrong and searched a demonstration video. The only one I found was from Willi's 3D-Druck (German) Youtube channel https://www.youtube.com/watch?v=SGea_PNpEtc
After watching and duplicating the video's steps, all I get is "Warning! NameIT ... No identifier created for 0 element(s)".
The Identification mesh is checked on, but even after repeated Cura restarts, different models loaded, it's the same result. The ONLY thing that does seem to work for me so far is the Rename Models function. All other NameIt functions are not producing anything.
BTW thanks so much for your other plugins - they're so helpful!
Using Cura 5.2.1
Currently the plugin converts all the names in capital letters. This is normal because I think that the letters are easier to print in this case (example of i and j which in capital letters has no dot) .
But some feedback are expected on this point. Could be in a futur release integrated as an option in the settings of the plugin.
Not sure if this is even possible since 'multiply' of objects is a cura feature.
If you currently multiply an ID'd object, the copies have the same ID, but do get the new object name 'object (2).stl'
'fixing' this might need an extra look at what happens when an ID is already in use for that object
(for example; object.stl ID1, object(1).stl ID2 and creating a copy of object.stl... that would create an object(2).stl but would the ID be 2 or 3?)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.