[openrtm-users 03223] Waypoint2D型のデータタイプがおかしい

Yuki Suga ysuga @ ysuga.net
2015年 10月 7日 (水) 11:10:00 JST


ML各位:
SSRの菅です.

環境:Windows 7 x64 OpenRTM-aist Python版 1.1.0 RELEASE 32bit版
Python2.7 32bit

表題の通り,バイナリからインストールしたOpenRTM-aistに含まれる
データ型がおかしいです.
Waypoint2D型ですが,IDLでは

########### ここから
    /*!
     * @struct Waypoint2D
     * @brief A waypoint in 2D space, including constraints.
     */
    struct Waypoint2D
    {
        /// Location of the waypoint.
        Pose2D target;
        /// How far away from the waypoint is considered success (radius in
metres).
        double distanceTolerance;
        /// How much off the target heading is considered success (in
radians).
        double headingTolerance;
        /// Target time to arrive at the waypoint by.
        Time timeLimit;
        /// Maximum sped to travel at while heading to the waypoint.
        Velocity2D maxSpeed;
    };
########### ここまで

ですが,site-packages/OpenRTM_aist/RTM_IDL/InterfaceDataType_idl.pyでは

########### ここから
# struct Waypoint2D
_0_RTC.Waypoint2D = omniORB.newEmptyClass()
class Waypoint2D (omniORB.StructBase):
    _NP_RepositoryId = "IDL:RTC/Waypoint2D:1.0"

    def __init__(self, target, distanceTolerance, headingTolerance,
timeLimit, maxSpeed):
        self.target = target
        self.distanceTolerance = distanceTolerance
        self.headingTolerance = headingTolerance
        self.timeLimit = timeLimit
        self.maxSpeed = maxSpeed

_0_RTC.Waypoint2D = Waypoint2D
_0_RTC._d_Waypoint2D  = (omniORB.tcInternal.tv_struct, Waypoint2D,
Waypoint2D._NP_RepositoryId, "Waypoint2D", "target",
omniORB.typeMapping["IDL:RTC/Pose2D:1.0"], "distanceTolerance",
omniORB.tcInternal.tv_double, "headingTolerance",
omniORB.tcInternal.tv_double, "timeLimit",
omniORB.typeMapping["IDL:RTC/Time:1.0"], "maxSpeed",
omniORB.typeMapping["IDL:RTC/Pose2D:1.0"])
_0_RTC._tc_Waypoint2D =
omniORB.tcInternal.createTypeCode(_0_RTC._d_Waypoint2D)
omniORB.registerType(Waypoint2D._NP_RepositoryId, _0_RTC._d_Waypoint2D,
_0_RTC._tc_Waypoint2D)
del Waypoint2D
########### ここまで

となっています.maxSpeedメンバのマッピングがPose2Dになっており,
このためにうまく通信できません.
バイナリに固めるときに使っているIDLが違うのでしょうか?

確認をお願いします.

それでは
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <http://www.openrtm.org/pipermail/openrtm-users/attachments/20151007/8b332924/attachment.html>


More information about the openrtm-users mailing list