在Maya中,Dependency Graph是Maya的核心,由许多DG节点互联组成。其中包含了两种我们常见的节点,一种是普通的DG节点,一种是DAG(directed acyclic graph)节点。DAG节点在本质上也是一种DG节点。

当我们需要操作DG节点的时候,我们知道,用户是不能直接访问Maya核心的,Maya在其核心之上提供了一系列严格定义的接口,使用户能够通过这些API来操作Maya内部数据。当我们需要对DG节点进行操作时,我们可以使用MFnDependencyNode函数集来进行操作,MFnDependencyNode需要设定一个DG节点MObject对象作为操作数据,具体如下:

MObject thisNode = thisMObject();
MFnDependencyNode fnThisNode( thisNode );
MFn::type type = fnThisNode.name();

以上是我们常规的对DG节点进行操作的方法,对于DAG节点来说,我们也可以通过同样的方法来设定一个DAG节点对象到MFnDagNode来对其进行操作,

MFnTransform  fnTransform;
MObject transform = fnTransform.create();
MFnDagNode fnDagNode( transform );
MFn::type type = fnDagNode.type();

从表面上看,上面这个操作似乎没有问题,但是我们想一想对象实例,由于可能会存在多个DAG路径到指定的MObject对象,那么如果只给定一个MObject对象,Maya是不可能对这个DAG节点进行在世界空间中进行操作的。换句话说,Maya不可能只通过一个给定的MObject对象来确定一个指定的实例。

所以,在大部分情况下,请使用DAG路径(MDagPath)来指定一个DAG节点,因为DAG路径总是会指向一个对象的特定实例,这样才能进行世界空间转换。

转载于:https://www.cnblogs.com/johnonsoftware/archive/2013/02/26/2933634.html

Maya中操作普通DG节点和Dag节点的区别相关推荐

  1. JavaScript中节点获取,节点的属性,如何操作节点

    任何 HTML 或 XML 文档都可以用 DOM 表示为一个由节点构成的层级结构.     一般来说在HTML中文档的节点分为三种: 1.元素节点 通过querySelector获取的节点就是元素节点 ...

  2. C#中操作XML (节点添加,修改,删除完整版)

    创建xml http://www.cnblogs.com/bingzisky/archive/2008/08/26/1276875.html 1.新建一个XML文件(bookstore.xml)如下: ...

  3. javascript中节点操作、节点属性、节点获取、创建节点、删除节点、克隆节点

    节点操作 节点操作实际是利用DOM树把节点划分为不同的层次关系,常见父子兄弟级关系 节点属性: 节点一般有三个属性:nodeType节点类型(其中元素节点值为1,属性节点值为2,文本节点值为3).no ...

  4. maya骨骼显示_干货 | 如何删除maya中绑定好的骨骼,只留下一个干净的模型

    哈喽大家好 我是曼特君 五分钟小课堂又要开课辣 快搬个小板凳准备好 今天交大家maya中删除骨骼绑定的方法 想把导入maya中带骨骼和绑定的模型 除了模型以外的部分 全部删除掉 变成一个干净的模型文件 ...

  5. 【3D游戏建模全流程教学】在Maya中制作小岛模型

    本文为大家展示使用Maya创建一个小岛的过程,希望大家喜欢. 1 模型参考 将Quixel岩石转过来,用它制成漂浮的岩石,从Maya中的Feel Good Inc.建造浮岛. 我在这里没有做太多的参考 ...

  6. 如何在Maya中修改已经绑定后的模型的法线

    前言:最近想把尼尔机械纪元的2B导入到UE中看看效果,可不知道是不是我解包的过程有问题,2B模型的裙子部分的发现有问题,而且裙子的模型还被拆分为了3个部分,直接软边是不管用的,而且已经绑定的模型就算修 ...

  7. python中csv文件操作_python中操作csv文件

    python中操作csv文件 读取csv improt csv f = csv.reader(open("文件路径","r")) for i in f: pri ...

  8. HTML保存节点,{HTML5}DOM节点操作-第一节

    ​DOM 中有一个非常重要的功能,就是节点模型,也就是 DOM 中的"M".页面中的元素结构就是通过这种节点模型来互相对应着的,只需要通过这些节点关系,可以创建.插入.替换.克隆. ...

  9. sql 树状结构中知道 父节点与孙节点_集群环境中使用Zookeeper实现分布式幂等控制...

    一.什么是Zookeeper? Zookeeper(业界简称zk)是一种提供配置管理.分布式协同以及命名的中心化服务,这些提供的功能都是分布式系统中非常底层且必不可少的基本功能,但是如果自己实现这些功 ...

最新文章

  1. 天池读书会来啦,带你体验沉浸式读书新方式
  2. ubuntu 12.04 配置LAMP
  3. asp.net定时执行任务-解决应用池回收问题----转载
  4. 在VS 2010上搭建Windows Phone 7开发平台
  5. linux-centos连网
  6. 开启弹窗_【电脑优化】面对电脑开机“弹窗”雨,你也很无奈呀!
  7. 宝峰c1对讲机写频软件_宝峰对讲机写频软件下载7.01 官方正式版-宝峰BF480,BF520,F25,F26对讲机写频软件西西软件下载...
  8. 牛客刷题---年会抽奖
  9. 计算长方体和四棱锥的表面积和体积(类的继承)python java
  10. asp上传头像mysql_asp 会员头像上传 代码
  11. And The Winner Is --- 百度网盘
  12. 计算机专业单招考试网上面试范文,2分钟单招面试自我介绍
  13. P-手性单膦配体BaryPhos可实现Suzuki-Miyaura偶联反应
  14. 1.HTTP网络编程
  15. Web基础(三)Python Web
  16. linux网络被限制网速,linux iptables限速及限制每IP连接数
  17. Guava (一)Guava Cache进阶之同步/异步load
  18. i.MX6ULL驱动开发 | 12 - 基于 Linux I2C 驱动读取AP3216C传感器
  19. 转:日常中一些好用的小软件
  20. 拉盖尔多项式 matlab,类氢原子的定态波函数

热门文章

  1. 如何在JavaScript中获取字符串数组的字符串?
  2. win11HDMI端口无法使用怎么办 windows11HDMI端口无法使用的解决方法
  3. 两轮差速驱动机器人轮间距校准方法
  4. 四轮驱动移动机器人(4WD)运动模型及应用分析(图片版)
  5. Vue.js(学习Vue3之前必须要掌握的知识)
  6. margin负值的巧妙运用(HTML、CSS)
  7. Javascript 清空input type=file 的值方法
  8. mysql之配置使其可用python远程控制
  9. PHP网站开启gzip压缩,PHP网站程序中开启Gzip压缩的两种方法
  10. 局部加权线性回归,线性回归高级版