标签:
AE中Transform下的信息位于流中,和别的软件不太一样。
如果是特效的参数信息要从EffectSuites中获取,默认的参数信息基本上StreamSuites都可以得到
需要注意,取得流之后也要释放流,否则就会出现下面的情况
首先,流信息位于层管理器中,需要先取得一个图层句柄,再通过这个图层得到它的流信息
这里就用当前激活状态的图层来测试,先取得当前激活状态的图层
suites.LayerSuite5()->AEGP_GetActiveLayer(....)
取得流的句柄
AEGP_StreamRefH streamRefH = NULL; suites.StreamSuite2()->AEGP_GetNewLayerStream(0, layerH, stream, &streamRefH);
取得具体值,还需要一个时间参数。这里取得层的当前时间
A_Time result;
suites.LayerSuite5()->AEGP_GetLayerCurrentTime(layerH, AEGP_LTimeMode_CompTime, &result);
取得当前时间下,位置信息的值
AEGP_StreamValue result; suites.StreamSuite2()->AEGP_GetNewStreamValue(0, position_streamH, AEGP_LTimeMode_CompTime, &time, false, &result);
如果2D模式就用two_d,3D模式就用three_d得到位置值
posValue.val.two_d.x
posValue.val.two_d.y
最后释放流
suites.StreamSuite2()->AEGP_DisposeStreamValue(...);
标签:
原文地址:http://www.cnblogs.com/hont/p/4198534.html