コード例 #1
0
ファイル: EndEffector.cpp プロジェクト: Shushman/dart
//==============================================================================
Node* EndEffector::cloneNode(BodyNode* _parent) const
{
  EndEffector* ee = new EndEffector(_parent, PropertiesData());
  ee->duplicateAddons(this);

  ee->copy(this);

  if(mIK)
    ee->mIK = mIK->clone(ee);

  return ee;
}
コード例 #2
0
ファイル: EndEffector.cpp プロジェクト: Shushman/dart
//==============================================================================
EndEffector::PropertiesData EndEffector::getEndEffectorProperties() const
{
  return PropertiesData(getEntityProperties(), mEndEffectorP,
                        getAddonProperties());
}
コード例 #3
0
ファイル: AspectWithVersion.hpp プロジェクト: a-price/dart
  using Base = BaseT;
  using Derived = DerivedT;
  using PropertiesData = PropertiesDataT;
  using CompositeType = CompositeT;
  using Properties = Aspect::MakeProperties<PropertiesData>;
  constexpr static void (*UpdateProperties)(Derived*) = updateProperties;

  using AspectImplementation = AspectWithVersionedProperties<
      Base, Derived, PropertiesData, CompositeT, updateProperties>;

  AspectWithVersionedProperties() = delete;
  AspectWithVersionedProperties(const AspectWithVersionedProperties&) = delete;

  /// Construct using a PropertiesData instance
  AspectWithVersionedProperties(
      const PropertiesData& properties = PropertiesData());

  /// Construct this Aspect and pass args into the constructor of the Base class
  template <typename... BaseArgs>
  AspectWithVersionedProperties(
      const PropertiesData& properties, BaseArgs&&... args)
    : Base(std::forward<BaseArgs>(args)...),
      mProperties(properties)
  {
    // Do nothing
  }

  // Documentation inherited
  void setAspectProperties(const Aspect::Properties& someProperties) override final;

  // Documentation inherited