# How should I use Contour Offset Vector (3006,0045)?

**URL:** <https://discourse.slicer.org/t/how-should-i-use-contour-offset-vector-3006-0045/26072>\
**Category:** Support\
**Tags:** dicom, radiotherapy\
**Created:** [November 4, 2022, 2:24pm UTC](https://discourse.slicer.org/t/how-should-i-use-contour-offset-vector-3006-0045/26072 "2022-11-04T14:24:58Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Alexandre\_Huat](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/alexandre_huat/32/7119_2.png) [@Alexandre\_Huat](https://discourse.slicer.org/u/Alexandre_Huat)\
**Post date:** [November 4, 2022, 2:24pm UTC](https://discourse.slicer.org/t/how-should-i-use-contour-offset-vector-3006-0045/26072/1 "2022-11-04T14:24:59Z")

</div>

Hi, my colleague and I have read the doc of DICOM Data Element Contour Offset Vector but we don’t understand how we should exactly use it to correct the Contour Data of an RT Structure Set. The doc is ambiguous, it says:

> ##### [C.8.8.6 ROI Contour Module](https://dicom.nema.org/medical/dicom/2020b/output/chtml/part03/sect_C.8.8.6.html)
> 
> ###### Contour Offset Vector (3006,0045)
> 
> Vector (x,y,z) in the Patient-Based Coordinate System described in [Section C.7.6.2.1.1](https://dicom.nema.org/medical/dicom/2020b/output/chtml/part03/sect_C.7.6.2.html#sect_C.7.6.2.1.1) that is normal to plane of Contour Data (3006,0050), **describing direction and magnitude of the offset (in mm) of each point of the central plane of a contour slab from the corresponding original point of Contour Data** (3006,0050). See [Section C.8.8.6.2](https://dicom.nema.org/medical/dicom/2020b/output/chtml/part03/sect_C.8.8.6.2.html).

with

> ##### [C.8.8.6.2 Contour Slab Thickness](https://dicom.nema.org/medical/dicom/2020b/output/chtml/part03/sect_C.8.8.6.2.html)
> 
> A set of Contour slabs may define a multi-slab Volume of Interest. Contour Slab Thickness (3006,0044) shall specify the thickness of **a slab, the central plane of which shall be defined by the set of points offset from Contour Data (3006,0050) by the value of Contour Offset Vector (3006,0045)**. […]

We see two possible understandings. Consider a contour offset vector _u = (a, b, c)_ and a contour point with contour data _p = (x, y, z)_. What are the actual coordinates _q_ of that point?

1. _q = p - u = (x - a, y - b, z - c)_
2. _q = p + u = (x + a, y + b, z + c)_

Thank you for your help.

---

<div class="post-metadata">

**Author:** ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)\
**Post date:** [November 4, 2022, 2:47pm UTC](https://discourse.slicer.org/t/how-should-i-use-contour-offset-vector-3006-0045/26072/2 "2022-11-04T14:47:49Z")

</div>

Probably nobody knows (except maybe David Clunie), because these field are not used in practice. See for example [usages of this field in all projects on github](https://github.com/search?q=ContourSlabThickness&type=Code) - they all seem to be just about defining and copying the value, they are not used in any computation.

Have you ever seen a DICOM RTSTRUCT with these fields present? If you haven’t seen such data sets, but you are not comfortable simply ignoring these fields then you can display a warning to the user or reject loading the series if the fields are present.

---

<div class="post-metadata">

**Author:** ![Alexandre\_Huat](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/alexandre_huat/32/7119_2.png) [@Alexandre\_Huat](https://discourse.slicer.org/u/Alexandre_Huat)\
**Post date:** [November 4, 2022, 3:13pm UTC](https://discourse.slicer.org/t/how-should-i-use-contour-offset-vector-3006-0045/26072/3 "2022-11-04T15:13:48Z")

</div>

> [@lassoan](#):
>
> Have you ever seen a DICOM RTSTRUCT with these fields present?

Yes, that’s why I’m asking. I know that Contour Offset Vector was removed from DICOM in 2021 but some files that date back to the 2010s use it.

> [@lassoan](#):
>
> you can display a warning to the user or reject loading the series if the fields are present.

That’s our current “fix” indeed.

---

<div class="post-metadata">

**Author:** ![Alexandre\_Huat](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/alexandre_huat/32/7119_2.png) [@Alexandre\_Huat](https://discourse.slicer.org/u/Alexandre_Huat)\
**Post date:** [November 17, 2022, 1:30pm UTC](https://discourse.slicer.org/t/how-should-i-use-contour-offset-vector-3006-0045/26072/4 "2022-11-17T13:30:08Z")

</div>

Some updates: I had a short mail exchange with David Clunie (thank you @lassoan) and Christof Schadt who is a member of the DICOM WG-07 and removed the Contour slab mechanism as part of the Change Proposal (CP) 2006.

About Contour Offset Vector, Christof said:

> As it is proposed by the definition of the Contour Slab Thickness, it is used to define multiple contour slabs out of a single contour. But **I have to admit I also do not fully understand how this is to be used**.
> 
> And that is also one of the main reasons why **the DICOM WG-07 (Radiotherapy) decided to retire this concept, as there is no known application that has implemented this feature**. As a result, in case you want to achieve interoperability, I would not recommend implementing this attribute.
> 
> (…)
> 
> We are currently at the IHE-RO Connectathon (…) and basically all the major vendors are present (Accuray, Brainlab, Elekta, IBA, Mevion, RaySearch, Varian/Siemens). And regarding the RT Structure Set, there is **the [Basic RT Objects Profile](https://www.ihe.net/resources/technical_frameworks/#radiationoncology)** that **is tested this week** and there, **the usage of slabs is not included**.
> 
> **I talked to one of the individuals who was present when the DICOM RT Structure Set was originally defined and also he cannot remember the reason why it is there (and also cannot reconstruct it from the DICOM Standard).**

So my colleague and I will definitely not try to do anything with this Contour Offset Vector and Contour Slab Thickness attributes.
