Vsdxファイル内のpage1.xmlファイルの中身を解析し図形のX,Y座標値を求めたいです。  
通常Cellタグ内のPinXの値を取得(単位はインチ?)すればよいと思うのですが、グループ化されていると、Cellタグ内の値から何か計算して導く必要があるため、その方法がわかればご教授お願いしたいです。

以下の図形は3重グループ化されており、末端であるShape(311)のX,Y座標を求めたいです。  
Shape(737) .. PinX=18.93220899470901  
Shape(309) .. PinX=2.822828326789882  
Shape(311) .. PinX=0.3819444444444443

```

    <Shape ID="737" Type="Group" LineStyle="3" FillStyle="3" TextStyle="3">
            <Cell N="PinX" V="18.93220899470901" />
            <Cell N="PinY" V="9.951221527777811" />
            <Cell N="Width" V="5.312830687830697" />
            <Cell N="Height" V="3.23075396825398" />
            <Cell N="LocPinX" V="2.656415343915349" F="Width*0.5" />
            <Cell N="LocPinY" V="1.61537698412699" F="Height*0.5" />
            <Cell N="Angle" V="0" />
            <Cell N="FlipX" V="0" />
            <Cell N="FlipY" V="0" />
            <Cell N="ResizeMode" V="0" />
            <Cell N="DisplayLevel" V="0" />
            <Shapes>
                <Shape ID="309" NameU="A" Name="A" Type="Group" Master="27">
                    <Cell N="PinX" V="2.822828326789882" F="Sheet.737!Width*0.53132284701933" />
                    <Cell N="PinY" V="2.441765873015881" F="Sheet.737!Height*0.75578824540932" />
                    <Cell N="Width" V="0.9350136171795547" F="Sheet.737!Width*0.17599160826285" />
                    <Cell N="Height" V="0.7638888888888887" F="Sheet.737!Height*0.23644291592458" />
                    <Cell N="LocPinX" V="0.4675068085897771" F="Inh" />
                    <Cell N="LocPinY" V="0.3819444444444444" F="Inh" />
                    <Shapes>
                        <Shape ID="311" NameU="5" IsCustomNameU="1" Name="5" IsCustomName="1" Type="Shape" MasterShape="7">
                            <Cell N="PinX" V="0.3819444444444443" F="Inh" />
                            <Cell N="PinY" V="0.381944444444438" F="Inh" />
                            <Cell N="Width" V="0.6183862433862509" F="Inh" />
                            <Cell N="Height" V="0.6183862433862509" F="Inh" />
                            <Cell N="LocPinX" V="0.3091931216931255" F="Inh" />
                            <Cell N="LocPinY" V="0.3091931216931255" F="Inh" />
                            <Cell N="LayerMember" V="3" />
                            <Section N="Geometry" IX="0">
                                <Row T="Ellipse" IX="1">
                                    <Cell N="X" V="0.3091931216931255" F="Inh" />
                                    <Cell N="Y" V="0.3091931216931255" F="Inh" />
                                    <Cell N="A" V="0.6183862433862509" U="DL" F="Inh" />
                                    <Cell N="B" V="0.3091931216931255" U="DL" F="Inh" />
                                    <Cell N="C" V="0.3091931216931255" U="DL" F="Inh" />
                                    <Cell N="D" V="0.6183862433862509" U="DL" F="Inh" />
                                </Row>
                            </Section>
                            <Data1>
                                あいうえお
                            </Data1>
                        </Shape>
                        
                    </Shapes>
                </Shape>
            </Shapes>
        </Shape>
    
```
CC BY-SA 4.0
2022-11-09T05:55:12.337
92101
2022-11-09T05:55:12.337
12388
question
visio
Visio Group化された図形のPinX, PinYの取得方法