Skip to content
Draft
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 81 additions & 0 deletions recipe/0125-rendering-3d/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
---
title: Including a 3D Rendering
id: 93
layout: recipe
tags: [tbc]
summary: "You want to include a 3D model representation"
---


## Use Case

You want to view an object from any orbital point of view or zoom level.
You want to view an object in augmented reality/XR in order to gain a better understanding of its dimensions and physical properties.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you give more details on the use case. This is a good example to follow: https://iiif.io/api/cookbook/recipe/0007-string-formats/. Its best to assume the reader is a novice with IIIF.


## Implementation notes

Add a [`rendering`](https://iiif.io/api/presentation/3.0/#rendering) to your manifest either at the root level, or any applicable child resource.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you go into more detail about the rendering property. Also when would it make sense to have it at the root level and when at a canvas?

The rendering MUST have a dereferenceable `id` linking to the supplied 3D model, a `type` of `Model`, and a `label`.

## Restrictions


## Example

```json
{
"@context": [
"http://www.w3.org/ns/anno.jsonld",
"http://iiif.io/api/presentation//context.json"
],
"id": "https://example.org/iiif/book1/manifest",
"type": "Manifest",
"label": { "en": [ "Image 1" ] },
"items": [
{
"id": "https://example.org/iiif/book1/canvas/p1",
"type": "Canvas",
"height": 1800,
"width": 1200,
"items": [
{
"id": "https://example.org/iiif/book1/page/p1/1",
"type": "AnnotationPage",
"items": [
{
"id": "https://example.org/iiif/book1/annotation/p0001-image",
"type": "Annotation",
"motivation": "painting",
"body": {
"id": "http://iiif.io/api/presentation/2.1/example/fixtures/resources/page1-full.png",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again when you have a 3d model this image should relate to the model and we can upload it to the fixtures repo.

"type": "Image",
"format": "image/png",
"height": 1800,
"width": 1200
},
"target": "https://example.org/iiif/book1/canvas/p1"
}
]
}
]
}
],
"rendering": [
{
"id": "https://example.org/iiif/book1.glb",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As you mention in Slack we would like to host this using the fixtures repo so if you can let me have access to the file I can upload it.

"type": "Model",
"label": { "en": [ "Download as GLB" ] },
"format": "model/gltf-binary"
}
]
}
```

# Related recipes

Provide a bulleted list of related recipes and why they are relevant.


{% include acronyms.md %}
{% include links.md %}