public AnimationJob playAnimationSegmentNow(Animation anim, long segBeginOffsetMsec, long segEndOffsetMsec){ if (myCachedAnimPlayer != null) { return myCachedAnimPlayer.playAnimation(anim, segBeginOffsetMsec, segEndOffsetMsec); } else { return AnimationUtils.playAnimation(myBundleCtx, myAnimPlayerOsgiFilterString , anim, segBeginOffsetMsec, segEndOffsetMsec); } } public AnimationJob playFullAnimationNow(Animation anim) {
private ChannelNode buildChannelTree(JointGroup<?, ?, ?> group) { DefaultChannelNode root = new DefaultChannelNode(); if (group == null) { return root; } root.setName(group.getName()); for (Joint j : group.getJoints()) { if (j == null) { continue; } root.addChannel(new DefaultChannelDefinition( j.getId().getLogicalJointNumber(), j.getName(), j.getDefaultPosition())); } for (JointGroup jg : group.getJointGroups()) { root.addGroup(buildChannelTree(jg)); } return root; } }
public static ChannelsParameterSource readChannelsParamsSource(HierarchicalConfiguration config){ List<HierarchicalConfiguration> nodes = (List<HierarchicalConfiguration>)config.configurationsAt(CHANNELS_PARAMETER); if(nodes == null || nodes.isEmpty()){ return null; } ChannelsParameterSource channelParams = new ChannelRobotParameters(); for(HierarchicalConfiguration node : nodes){ ChannelsParameter channelParam = readChannelsParam(node); if(channelParam != null){ channelParams.addChannelParameter(channelParam); } } return channelParams; }
public static ConfigurationNode writeChannelsParameter( ChannelsParameter param) { if(param == null) { return null; } ConfigurationNode node = XMLConfigUtils.node(CHANNELS_PARAMETER); node.addChild(XMLConfigUtils.node( CHANNEL_ID_PARAM, param.getChannelID())); node.addChild(XMLConfigUtils.node( CHANNEL_NAME_PARAM, param.getChannelName())); node.addChild(XMLConfigUtils.node( DEFAULT_POSITION, param.getDefaultPosition().getValue())); node.addChild(writeNormalizableRange(param.getNormalizableRange())); node.addChild(writeGenericParameters(param.getKeyValuePairs())); return node; }
ChannelsParameterSource cpSource = AnimationUtils.getChannelsParameterSource(); getLogger().debug("channelParamSource={}", cpSource); List<ChannelsParameter> chanParams = cpSource.getChannelParameters(); getLogger().debug("Test animation channels={}", chanParams); Animation anim = new Animation(); int jointNum = cp.getChannelID(); String name = cp.getChannelName(); Channel chan = new Channel(jointNum, name); getLogger().debug("Creating MotionPath for channel jointNum={}, name={}", jointNum, name);
public static ConfigurationNode writeChannelsParameters( ChannelsParameterSource paramsSource) { ConfigurationNode node = XMLConfigUtils.node(CHANNELS_PARAMETERS); if(paramsSource == null){ return node; } List<ChannelsParameter> params = paramsSource.getChannelParameters(); if(params == null){ return node; } for(ChannelsParameter param : params){ node.addChild(writeChannelsParameter(param)); } return node; }
public static ChannelsParameter readChannelsParam( HierarchicalConfiguration config){ int channelId = config.getInt(CHANNEL_ID_PARAM); String channelName = config.getString(CHANNEL_NAME_PARAM); NormalizedDouble defaultPosition = new NormalizedDouble(config.getDouble(DEFAULT_POSITION)); NormalizableRange range = readNormalizableRange(config); Map<String, String> genericParams = readGenericProperties(config); ChannelsParameter param = new ChannelsParameter( channelId, channelName, defaultPosition, range); for(String key: genericParams.keySet()) { param.setParameter(key, genericParams.get(key)); } return param; }
public synchronized void setRobot(Robot robot) { myRobot = robot; myChannelParameters = new ArrayList(); if(robot == null){ return; } List<Joint> joints = robot.getJointList(); if(joints == null){ return; } for (Joint joint : joints) { int channelId = joint.getId().getLogicalJointNumber(); String channelName = joint.getName(); NormalizedDouble defaultPosition = joint.getDefaultPosition(); NormalizableRange range = joint.getPositionRange(); ChannelsParameter param = new ChannelsParameter(channelId, channelName, defaultPosition, range); addChannelParameter(param); } }
/** * * @param xs * @param param * @throws IOException */ public static void writeChannelsParameter( XmlSerializer xs, ChannelsParameter param) throws IOException { xs.startTag(NAMESPACE, CHANNELS_PARAMETER); xs.startTag(NAMESPACE, CHANNEL_ID_PARAM); xs.text(Integer.toString(param.getChannelID())); xs.endTag(NAMESPACE, CHANNEL_ID_PARAM); xs.startTag(NAMESPACE, CHANNEL_NAME_PARAM); xs.text(param.getChannelName()); xs.endTag(NAMESPACE, CHANNEL_NAME_PARAM); xs.startTag(NAMESPACE, DEFAULT_POSITION); xs.text(param.getDefaultPosition().toString()); xs.endTag(NAMESPACE, DEFAULT_POSITION); xs.startTag(NAMESPACE, NORMALIZABLE_RANGE); writeNormalizableRange(xs, param.getNormalizableRange()); xs.endTag(NAMESPACE, NORMALIZABLE_RANGE); xs.startTag(NAMESPACE, GENERIC_PARAMETERS); for(String key: param.getKeyValuePairs().keySet()) { writeGenericParameter( xs, key, param.getKeyValuePairs().get(key)); } xs.endTag(NAMESPACE, GENERIC_PARAMETERS); xs.endTag(NAMESPACE, CHANNELS_PARAMETER); }
xs.startTag(NAMESPACE, CHANNELS_PARAMETERS); if(source != null){ List<ChannelsParameter> params = source.getChannelParameters(); if(params != null){ for(ChannelsParameter param: params) {