-
Notifications
You must be signed in to change notification settings - Fork 16
Attempt at allowing build element with no built items #62
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
atardugno
commented
Mar 30, 2022
- Relaxing the requirement for a build element to have one or more items
- Fixed a couple of typos
- Making sure the requirements for the coordinate system to be mapped to the output device is limited the output coordinate system (as referenced in other parts of the specification)
- Attempt to convey the message that a 3MF model would be ultimately be manufactured but can be in an intermediate state which is still not fully defined (e.g. there's no item referencing the object resource yet)
…hat the coordinate system definitition applies only to the build items
3MF Core Specification.md
Outdated
@@ -308,12 +308,12 @@ The language of the contents of a 3MF Document (typically useful for content pro | |||
|
|||
# Chapter 3. 3D Models | |||
|
|||
The _model_, in this specification, refers to the object or objects to be created via 3D manufacturing processes as a single operation. It might include a single object, multiple homogenous objects, multiple heterogeneous objects, an object fully enclosed in another object, or multiple objects in an interlocked and inseparable _assembly_. | |||
The _model_, in this specification, refers to the object or objects to be ultimately created via 3D manufacturing processes as a single operation. It might include a single object, multiple homogenous objects, multiple heterogeneous objects, an object fully enclosed in another object, or multiple objects in an interlocked and inseparable _assembly_. A 3MF Document can be in an intermediate state in which none of the defined objects is yet ready to be manufactured, in which case no actual output object is expected. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think the "ultimately" is needed here, we are not changing the core intention of 3MF to be a manufacturing format so the end state of being created by 3D manufacturing is unchanged and since the intermediate state (from editors, simulators etc.) is a possibility but not a certainty we don't necessarily need to make the distinction.
3MF Core Specification.md
Outdated
@@ -437,8 +437,7 @@ Element **\<build>** | |||
|
|||
 | |||
|
|||
The \<build> element contains one or more items to manufacture as part of processing the job. A consumer MUST NOT output any 3D objects not referenced by an \<item> element. | |||
|
|||
The \<build> element could either be empty, in case of a 3MF Document providing only design objects, or contain one or more items to produce as part of processing the job. A consumer MUST manufacture only 3D objects which are referenced by an \<item> element. Any unreferenced object can still be processed by an editing application, which could finalize their manufacturing by referencing them in corresponding \<item> elements. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would make this:
"The <build> element contains zero or more <item> elements to manufacture as part of processing the job. A consumer MUST NOT manufacture any 3D objects not referenced by an <item> element. Any unreferenced object can still be consumed by an editing application, which could then reference them in corresponding <item> elements when they are ready for manufacture."
I think that wording makes it clear that we are supporting new cases without changing any existing workflows.