5 #ifndef CNOID_POSE_SEQ_PLUGIN_POSE_SEQ_VIEW_BASE_H 6 #define CNOID_POSE_SEQ_PLUGIN_POSE_SEQ_VIEW_BASE_H 9 #include <cnoid/ItemList> 11 #include <cnoid/ConnectionSet> 12 #include <cnoid/TimeBar> 13 #include <cnoid/Archive> 14 #include <cnoid/MenuManager> 16 #include <cnoid/Buttons> 17 #include <cnoid/CheckBox> 18 #include <cnoid/ButtonGroup> 19 #include <cnoid/SpinBox> 20 #include <cnoid/BodyItem> 21 #include <cnoid/LinkTreeWidget> 24 #include <boost/function.hpp> 25 #include <boost/dynamic_bitset.hpp> 32 class PoseSelectionDialog;
33 class LinkPositionAdjustmentDialog;
34 class YawOrientationRotationDialog;
59 return it1->time() < it2->time();
62 typedef std::multiset<PoseSeq::iterator, PoseIterTimeComp>
PoseIterSet;
100 : validChildExists(false), allChildrenAreValid(true),
101 childWithStationaryPointExists(false), allChildrenAreStationaryPoints(true) { }
198 void restoreCurrentPoseSeqItem(
const Archive& archive);
bool pasteCopiedPoses(double timeToPaste)
Definition: PoseSeqViewBase.cpp:1154
Menu popupMenu
Definition: PoseSeqViewBase.h:108
void onLinkPositionAdjustmentDialogAccepted()
Definition: PoseSeqViewBase.cpp:1343
std::multiset< PoseSeq::iterator, PoseIterTimeComp > PoseIterSet
Definition: PoseSeqViewBase.h:62
ToggleToolButton updateAllToggle
Definition: PoseSeqViewBase.h:92
Definition: PoseSeqViewBase.h:97
bool deleteSelectedPoses()
Definition: PoseSeqViewBase.cpp:1113
bool toggleSelection(PoseSeq::iterator poseIter, bool adding, bool changeTime)
Definition: PoseSeqViewBase.cpp:922
void onPoseSelectionDialogAccepted()
Definition: PoseSeqViewBase.cpp:1230
void onIkPartCheckClicked(LinkTreeItem *item, Qt::CheckState checkState)
Definition: PoseSeqViewBase.cpp:819
std::ostream & os
Definition: PoseSeqViewBase.h:43
bool allChildrenAreStationaryPoints
Definition: PoseSeqViewBase.h:105
void onFlipPosesActivated()
Definition: PoseSeqViewBase.cpp:1408
void setupOperationParts()
Definition: PoseSeqViewBase.cpp:355
void onBaseLinkRadioClicked()
Definition: PoseSeqViewBase.cpp:602
bool isSelectedPoseMoving
Definition: PoseSeqViewBase.h:49
CheckBox timeSyncCheck
Definition: PoseSeqViewBase.h:88
QLabel currentItemLabel
Definition: PoseSeqViewBase.h:87
TimeBar * timeBar
Definition: PoseSeqViewBase.h:73
virtual void onTimeScaleChanged()
Definition: PoseSeqViewBase.cpp:840
Definition: ItemList.h:14
bool validChildExists
Definition: PoseSeqViewBase.h:102
bool modifyTransitionTimeOfSelectedPoses(double ttime)
Definition: PoseSeqViewBase.cpp:1201
void setCheckState(LinkTreeItem *item, int column, Qt::CheckState state)
Definition: PoseSeqViewBase.cpp:458
virtual bool onTimeChanged(double time)=0
void setCurrentBodyStateToSelectedPoses(bool onlySelected)
Definition: PoseSeqViewBase.cpp:1563
void onInterpolationParametersChanged()
Definition: PoseSeqViewBase.cpp:830
void selectAllPosesBeforeCurrentPosition()
Definition: PoseSeqViewBase.cpp:986
void onBodyKinematicStateEdited()
Definition: PoseSeqViewBase.cpp:1450
bool setBaseLink(PosePtr &pose, Link *link)
Definition: PoseSeqViewBase.cpp:614
void onViewActivated()
Definition: PoseSeqViewBase.cpp:318
Definition: ConnectionSet.h:22
virtual bool storeState(Archive &archive)
Definition: PoseSeqViewBase.cpp:1888
void selectAllPosesAfterCurrentPosition()
Definition: PoseSeqViewBase.cpp:974
virtual void onInsertPoseButtonClicked()=0
void onTimeSyncCheckToggled()
Definition: PoseSeqViewBase.cpp:342
Definition: PoseSeqViewBase.h:57
virtual void onPoseInserted(PoseSeq::iterator it, bool isMoving)
Definition: PoseSeqViewBase.cpp:1695
PoseSeqViewBase(View *view)
Definition: PoseSeqViewBase.cpp:256
Connection connectionOfBodyKinematicStateEdited
Definition: PoseSeqViewBase.h:69
bool togglePart(PosePtr &pose, LinkTreeItem *item, bool on)
Definition: PoseSeqViewBase.cpp:716
bool togglePartStationaryPoints(PosePtr &pose, LinkTreeItem *item, bool on)
Definition: PoseSeqViewBase.cpp:800
View * view
Definition: PoseSeqViewBase.h:42
ButtonGroup * baseLinkRadioGroup
Definition: PoseSeqViewBase.h:78
std::list< PoseRef >::iterator iterator
Definition: PoseSeq.h:81
void setCurrentItemName(ItemPtr item)
Definition: PoseSeqViewBase.cpp:1437
LinkPositionAdjustmentDialog * linkPositionAdjustmentDialog
Definition: PoseSeqViewBase.h:112
bool toggleZmpStationaryPoint(PosePtr &pose, bool on)
Definition: PoseSeqViewBase.cpp:764
int validPartColumn
Definition: PoseSeqViewBase.h:79
DoubleSpinBox transitionTimeSpin
Definition: PoseSeqViewBase.h:95
Definition: PoseSeqViewBase.h:36
virtual void onSelectedPosesModified()
Definition: PoseSeqViewBase.cpp:1425
bool setCurrentBodyStateToPose(PosePtr &pose, bool onlySelected)
Definition: PoseSeqViewBase.cpp:1602
QString textForEmptyName
Definition: PoseSeqViewBase.h:45
PoseSeq::iterator insertPoseUnit(PoseUnitPtr poseUnit)
Definition: PoseSeqViewBase.cpp:1536
bool copySelectedPoses()
Definition: PoseSeqViewBase.cpp:1138
void countSelectedKeyPoses()
Definition: PoseSeqViewBase.cpp:1418
double currentTime
Definition: PoseSeqViewBase.h:52
int ikPartColumn
Definition: PoseSeqViewBase.h:81
Definition: LinkTreeWidget.h:23
MenuManager menuManager
Definition: PoseSeqViewBase.h:109
BodyPtr body
Definition: PoseSeqViewBase.h:51
PoseSeq::iterator insertPronunSymbol()
Definition: PoseSeqViewBase.cpp:1529
void removeSelectedPartsFromKeyPoses()
Definition: PoseSeqViewBase.cpp:1065
ToolButton insertPoseButton
Definition: PoseSeqViewBase.h:90
void onYawOrientationRotationDialogAccepted()
Definition: PoseSeqViewBase.cpp:1306
bool allChildrenAreValid
Definition: PoseSeqViewBase.h:103
double quantizedTime(double time)
Definition: PoseSeqViewBase.cpp:1549
ChildrenState()
Definition: PoseSeqViewBase.h:99
int baseLinkColumn
Definition: PoseSeqViewBase.h:77
Connection connectionOfTimeChanged
Definition: PoseSeqViewBase.h:74
void selectPosesHavingSelectedLinks()
Definition: PoseSeqViewBase.cpp:1003
void selectPosesJustHavingSelectedLinks()
Definition: PoseSeqViewBase.cpp:1035
Definition: CheckBox.h:14
virtual void setCurrentPoseSeqItem(PoseSeqItemPtr poseSeqItem)
Definition: PoseSeqViewBase.cpp:855
bool operator()(const PoseSeq::iterator it1, const PoseSeq::iterator it2) const
Definition: PoseSeqViewBase.h:58
void onAdjustWaistPositionActivated()
Definition: PoseSeqViewBase.cpp:1337
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
PoseSeqPtr copiedPoses
Definition: PoseSeqViewBase.h:65
bool cutSelectedPoses()
Definition: PoseSeqViewBase.cpp:1129
void selectAllPoses()
Definition: PoseSeqViewBase.cpp:963
virtual void onLinkTreeUpdateRequest(bool isInitialCreation)
Definition: PoseSeqViewBase.cpp:467
void updateLinkTreeModel()
Definition: PoseSeqViewBase.cpp:1747
bool setCurrentLinkStateToIkLink(Link *link, Pose::LinkInfo *linkInfo)
Definition: PoseSeqViewBase.cpp:1646
bool toggleZmp(PosePtr &pose, bool on)
Definition: PoseSeqViewBase.cpp:654
bool childWithStationaryPointExists
Definition: PoseSeqViewBase.h:104
void onRotateYawOrientationsActivated()
Definition: PoseSeqViewBase.cpp:1300
bool toggleStationaryPoint(PosePtr &pose, Link *link, bool on)
Definition: PoseSeqViewBase.cpp:782
ChildrenState updateLinkTreeModelSub(LinkTreeItem *item, const BodyPtr &body, const Pose &pose)
Definition: PoseSeqViewBase.cpp:1780
void initializeLinkTreeTraverse(QTreeWidgetItem *parentItem)
Definition: PoseSeqViewBase.cpp:535
virtual void onDeleteButtonClicked()
Definition: PoseSeqViewBase.cpp:1689
~PoseSeqViewBase()
Definition: PoseSeqViewBase.cpp:310
boost::dynamic_bitset possibleIkLinkFlag
Definition: PoseSeqViewBase.h:82
LinkTreeWidget * linkTreeWidget
Definition: PoseSeqViewBase.h:76
virtual void onPoseRemoving(PoseSeq::iterator it, bool isMoving)
Definition: PoseSeqViewBase.cpp:1705
void initializeLinkTreeIkLinkColumn()
Definition: PoseSeqViewBase.cpp:501
PosePtr poseForDefaultStateSetting
Definition: PoseSeqViewBase.h:85
void onItemSelectionChanged(const ItemList< PoseSeqItem > &selectedItems)
Definition: PoseSeqViewBase.cpp:846
virtual bool restoreState(const Archive &archive)
Definition: PoseSeqViewBase.cpp:1902
PoseIterSet::iterator findPoseIterInSelected(PoseSeq::iterator poseIter)
Definition: PoseSeqViewBase.cpp:910
ToolButton updateButton
Definition: PoseSeqViewBase.h:91
void onStationaryPointCheckClicked(LinkTreeItem *linkTreeItem, Qt::CheckState checkState)
Definition: PoseSeqViewBase.cpp:745
bool isChecked(LinkTreeItem *item, int column)
Definition: PoseSeqViewBase.cpp:442
void setupLinkTreeWidget()
Definition: PoseSeqViewBase.cpp:401
PoseIterSet selectedPoseIters
Definition: PoseSeqViewBase.h:63
PoseSeq::iterator insertPose()
Definition: PoseSeqViewBase.cpp:1475
ConnectionSet poseSeqConnections
Definition: PoseSeqViewBase.h:68
PoseSeqPtr seq
Definition: PoseSeqViewBase.h:48
PoseSeq::iterator currentPoseIter
Definition: PoseSeqViewBase.h:55
ToolButton deleteButton
Definition: PoseSeqViewBase.h:93
void popupContextMenu(QMouseEvent *event)
Definition: PoseSeqViewBase.cpp:1218
ConnectionSet staticConnections
Definition: PoseSeqViewBase.h:67
virtual void onPoseModified(PoseSeq::iterator it)
Definition: PoseSeqViewBase.cpp:1734
void onUpdateKeyposesWithBalancedTrajectoriesActivated()
Definition: PoseSeqViewBase.cpp:1390
void onAdjustStepPositionsActivated()
Definition: PoseSeqViewBase.cpp:1276
void initializeLinkTree()
Definition: PoseSeqViewBase.cpp:480
PoseSeqItemPtr currentPoseSeqItem
Definition: PoseSeqViewBase.h:47
void doAutomaticInterpolationUpdate()
Definition: PoseSeqViewBase.cpp:1876
void togglePoseAttribute(boost::function< bool(PosePtr &pose)> toggleFunction)
Definition: PoseSeqViewBase.cpp:572
void onSelectSpecifiedKeyPosesActivated()
Definition: PoseSeqViewBase.cpp:1224
BodyItemPtr currentBodyItem
Definition: PoseSeqViewBase.h:50
double timeScale
Definition: PoseSeqViewBase.h:53
void onValidPartCheckClicked(LinkTreeItem *item, Qt::CheckState checkState)
Definition: PoseSeqViewBase.cpp:636
void onUpdateButtonClicked()
Definition: PoseSeqViewBase.cpp:1557
LinkTreeItem * zmpRow
Definition: PoseSeqViewBase.h:83
int stationaryPointColumn
Definition: PoseSeqViewBase.h:80
void onViewDeactivated()
Definition: PoseSeqViewBase.cpp:333
YawOrientationRotationDialog * yawOrientationRotationDialog
Definition: PoseSeqViewBase.h:113
void setChecked(LinkTreeItem *item, int column, bool checked)
Definition: PoseSeqViewBase.cpp:449
PoseSelectionDialog * poseSelectionDialog
Definition: PoseSeqViewBase.h:111
CheckBox autoUpdateModeCheck
Definition: PoseSeqViewBase.h:94
ConnectionSet linkTreeAttributeChangeConnections
Definition: PoseSeqViewBase.h:71
bool toggleLink(PosePtr &pose, LinkTreeItem *item, Link *link, bool partOn, bool ikOn)
Definition: PoseSeqViewBase.cpp:674
bool moveSelectedPoses(double time0)
Definition: PoseSeqViewBase.cpp:1174