Device control keywords
These keywords are used to provide control over the 3D manufacturing device.
2.1. Job3DOutputArea
The psk3d:Job3DOutputArea Property SHOULD be used to define the size of the area where the device can actually print: the lower left bottom corner of the Job3DOutputArea is defined as (0,0,0). Job3DOutputAreaWidth, Job3DOutputAreaDepth, and Job3DOutputAreaHeight Properties define the bounding box of the print volume, while Job3DOutputAreaMesh optionally defines the exact print volume within that bounding box if the print volume is not a cuboid.
Characteristic | Details |
---|---|
Name | psk3d:Job3DOutputArea |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, which MUST contain Job3DOutputAreaWidth, Job3DOutputAreaDepth, and Job3DOutputAreaHeight Properties, and MAY contain Job3DOutputAreaMesh. Child: Value xsi:type: N/A Value: OutputDimensions Description: OutputDimensions contains the set of 3 properties that make up each of the output area dimensions. |
Job3DOutputArea keyword usage
<psf:Property name="psk3d:Job3DOutputArea">
<psf:Property name="psk3d:Job3DOutputAreaWidth">
<psf:Value xsi:type="xsd:integer">285000</psf:Value>
</psf:Property>
<psf:Property name="psk3d:Job3DOutputAreaDepth">
<psf:Value xsi:type="xsd:integer">153000</psf:Value>
</psf:Property>
<psf:Property name="psk3d:Job3DOutputAreaHeight">
<psf:Value xsi:type="xsd:integer">155000</psf:Value>
</psf:Property>
<psf:Property name="psk3d:Job3DOutputAreaMesh">
<psf:Value xsi:type="xsd:string">
<![CDATA[
<mesh xmlns="https://schemas.microsoft.com/3dmanufacturing/mesh/2014/11" unit="millimeter">
<vertices>
<vertex x="0" y="0" z="0" />
<vertex x="0" y="153000" z="0" />
<vertex x="285000" y="0" z="0" />
<vertex x="0" y="0" z="155000" />
</vertices>
<triangles>
<triangle v1="0" v2="1" v3="2" />
<triangle v1="0" v2="2" v3="3" />
<triangle v1="0" v2="3" v3="1" />
<triangle v1="2" v2="1" v3="3" />
</triangles>
</mesh>
]]></psf:Value>
</psf:Property>
</psf:Property>
2.1.1. Job3DOutputAreaWidth
Describes the width of the output area along the X axis, in microns.
Characteristic | Details |
---|---|
Name | psk3d:Job3DOutputAreaWidth |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, as follows: Child: Value xsi:type: xsd:integer Value: OutputWidth Description: OutputWidth MUST contain an integer greater than 0 that is equal to the width of the output area along the X axis, in microns. |
2.1.2. Job3DOutputAreaDepth
Describes the depth of the output area along the Y axis, in microns.
Characteristic | Details |
---|---|
Name | psk3d:Job3DOutputAreaDepth |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, as follows: Child: Value xsi:type: xsd:integer Value: OutputDepth Description: OutputDepth MUST contain an integer greater than 0 that is equal to the depth of the output area along the Y axis, in microns. |
2.1.3. Job3DOutputAreaHeight
Describes the height of the output area along the Z axis, in microns.
Characteristic | Details |
---|---|
Name | psk3d:Job3DOutputAreaHeight |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, as follows: Child: Value xsi:type: xsd:integer Value: OutputHeight Description: OutputHeight MUST contain an integer greater than 0 that is equal to the depth of the output area along the Z axis, in microns. |
2.1.4. Job3DOutputAreaMesh
Describes the shape of the output volume if not a rectangular prism. The string value is an XML blob following the 3MF spec for a <mesh> element (containing vertices and triangles, and conforming to the manifoldness standards for 3MF meshes). This polyhedron MUST be entirely contained within the bounding box described by the previous OutputArea Properties.
Characteristic | Details |
---|---|
Name | psk3d:Job3DOutputAreaMesh |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, as follows: Child: Value xsi:type: xsd:string Value: OutputMesh Description: OutputMesh MUST contain an xml string of vertices and triangles, as defined in the mesh section of the 3MF spec, which represents the boundary of the output volume. |
2.2. Job3DAppName
The device MAY identify a workflow app other than the default (the example contains the default workflow) that the print dialog will invoke when this printer is selected. This workflow app allows for any custom UI that may be necessary or desired to best set up a 3D print job for this device.
Characteristic | Details |
---|---|
Name | psk3d:Job3DAppName |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, as follows: Child: Value xsi:type: xsd:string Value: Description: The package name of the workflow app to be used for this printer in the Modern Print Dialog |
Job3DAppName keyword usage
<psf:Property name="psk3d:Job3DAppName">
<psf:Value xsi:type="xsd:string">Microsoft.3DBuilder_8wekyb3d8bbwe</psf:Value>
</psf:Property>
2.3. Job3DWSDAPackageFamilyName
The device MAY identify a UWP device app, which the print dialog will launch when the Advanced settings button is clicked by a user. This app presents UI for operations such as printer maintenance, material setup, calibration, etc. No default is supplied, so if this keyword is omitted, no Advanced settings button will be displayed.
Characteristic | Details |
---|---|
Name | psk3d:Job3DWSDAPackageFamilyName |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, as follows: Child: Value xsi:type: xsd:string Value: Description: The package name of the UWP device app to be used for this printer's advanced settings. |
Job3DWSDAPackageFamilyName keyword usage
<psf:Property name="psk3d:Job3DWSDAPackageFamilyName">
<psf:Value xsi:type="xsd:string"> </psf:Value>
</psf:Property>
2.4. Job3D3MFVersion
The device MUST identify the version of 3MF file that it expects to receive from the Windows print system. The version is specified by the URI namespace from the appropriate version of the core specification. For backwards compatibility, if this keyword is omitted, it will be assumed to take a default value of <https://schemas.microsoft.com/3dmanufacturing/2013/01>
, indicating the legacy 0.93 version of 3MF, which is NOT RECOMMENDED.
Characteristic | Details |
---|---|
Name | psk3d:Job3D3MFVersion |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, as follows: Child: Value xsi:type: xsd:string Value: Description: A URI namespace defining the 3MF core version supported by the device as input. |
Job3D3MFVersion keyword usage
<psf:Property name="psk3d:Job3D3MFVersion">
<psf:Value xsi:type="xsd:string">https://schemas.microsoft.com/3dmanufacturing/core/2015/02</psf:Value>
</psf:Property>
2.5. Job3D3MFExtensions
The device MAY specify 3MF extensions (by namespace, forming a space-delimited list) that it understands, for instance allowing the print system to send slice data if available.
Characteristic | Details |
---|---|
Name | psk3d:Job3D3MFExtensions |
Valid for | PrintCapabilities documents |
Element type | Property |
Contents | Contains exactly 1 <Value> child element, as follows: Child: Value xsi:type: xsd:string Value: Description: A space-delimited list of URI namespaces defining the 3MF extensions supported by the device as input. |
Job3D3MFExtensions keyword usage
<psf:Property name="psk3d:Job3D3MFExtensions">
<psf:Value xsi:type="xsd:string">https://schemas.microsoft.com/3dmanufacturing/material/2015/02</psf:Value>
</psf:Property>