<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.E-MailFormatvorlage17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=DE link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal>Hi all, <o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I defined my own mesh class (named <b>Mesh</b>) by inheriting from vtkPolyData. Now I am struggling with the SafeDownCast method in order to cast a vtkPolyData object into a <b>Mesh</b> object. Whenever I am applying a SafeDownCast to a vtkPolyData object, NULL is returned.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The <b>Mesh</b> class looks as follows:<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:blue'>class</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> </span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Mesh</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> : </span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>public</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> </span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>vtkPolyData</span><span style='font-size:9.5pt;font-family:Consolas;color:black'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>{<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>  </span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>public</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>:<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>    </span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>static</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> </span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Mesh</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>* New();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>    </span><span style='font-size:9.5pt;font-family:Consolas;color:#6F008A'>vtkTypeMacro</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>(</span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Mesh</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>, </span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>vtkPolyData</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>);<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>    </span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>void</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> PrintSelf(</span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>ostream</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>& </span><span style='font-size:9.5pt;font-family:Consolas;color:gray'>os</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>, </span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>vtkIndent</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> </span><span style='font-size:9.5pt;font-family:Consolas;color:gray'>indent</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>);<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>  </span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>protected</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>:<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>    Mesh();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>    ~Mesh();<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'> <o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>  </span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>private</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>:<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>    Mesh(</span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>const</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> </span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Mesh</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>&); </span><span style='font-size:9.5pt;font-family:Consolas;color:green'>// Not implemented.</span><span style='font-size:9.5pt;font-family:Consolas;color:black'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'>    </span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>void</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> </span><span style='font-size:9.5pt;font-family:Consolas;color:teal'>operator=</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>(</span><span style='font-size:9.5pt;font-family:Consolas;color:blue'>const</span><span style='font-size:9.5pt;font-family:Consolas;color:black'> </span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Mesh</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>&); </span><span style='font-size:9.5pt;font-family:Consolas;color:green'>// Not implemented.</span><span style='font-size:9.5pt;font-family:Consolas;color:black'><o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'> };<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='color:black'>…and this is the cast that does not work properly:<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='color:black'><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Mesh</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>* mesh = </span><span style='font-size:9.5pt;font-family:Consolas;color:#2B91AF'>Mesh</span><span style='font-size:9.5pt;font-family:Consolas;color:black'>::SafeDownCast(<vtkPolyData object>); </span><span style='font-size:9.5pt;font-family:Consolas;color:green'>// mesh always equals NULL<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:green'><o:p> </o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='color:black'>Any help would be appreciated. Thanks!<o:p></o:p></span></p><p class=MsoNormal style='text-autospace:none'><span style='font-size:9.5pt;font-family:Consolas;color:black'><o:p> </o:p></span></p><p class=MsoNormal>Best regards<o:p></o:p></p><p class=MsoNormal>Maximilian<o:p></o:p></p></div><div id="DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><br /> <table style="border-top: 1px solid #D3D4DE;">
        <tr>
      <td style="width: 55px; padding-top: 18px;"><a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" target="_blank"><img src="https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif" alt="" width="46" height="29" style="width: 46px; height: 29px;" /></a></td>
                <td style="width: 470px; padding-top: 17px; color: #41424e; font-size: 13px; font-family: Arial, Helvetica, sans-serif; line-height: 18px;">Virenfrei. <a href="https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" target="_blank" style="color: #4453ea;">www.avast.com</a>                </td>
        </tr>
</table>
<a href="#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2" width="1" height="1"> </a></div></body></html>