程序化控制——大量元素
Programmatic control -- large number of elements
我是 AE 的新手。我知道 JS 表达式。我有编程背景。
我想要可视化以下类型的数据.....
我有大约 10,000 个不同的元素(城市中的位置)。这些元素中的每一个都发生在过去 10 年中(我将其压缩为 60 秒)。
当每个元素出现时..我想要一个小球体出现。这个球体将出现在 X,Y space 的某个地方(取决于它的纬度和经度)。
为了提供一些背景信息...数据是一系列房屋销售。卖价越大...球体越大....
因为元素较多。在 AE 中手动执行此操作是不可能的(也不可取)。
那么...我的问题是...我如何在 AE 中以编程方式执行此操作...?
有没有可能...?
或者我应该编写一个程序来自动创建某种类型的 SVG,然后我可以将其导入 AE...?
或者完全是另一种方法...?
欢迎任何关于基本方法的想法。
谢谢,
马克
Q1:所以...我的问题是...我如何在 AE 中以编程方式执行此操作...?
A1:您可以使用 ExtendScript API 到 运行 一个 Javascript 创建您的元素。
Q2:有没有可能……?
A2:是的。
问题 3:或者我是否应该编写一个程序来自动创建某种类型的 SVG,然后我可以将其导入 AE...?
A3:您不能将 SVG 导入 AE(据我所知)。
Q4:或者完全是另一种方法...?
A4:不。你来对地方了(恕我直言)。
您可以使用我的两个脚本(警告:无耻的自我推销)在 AE 合成中创建地图和位置标记。
- Locations 从 CSV 文件中为您创建标记 http://aescripts.com/locations/。
- AEMaps 从 geojson 文件为您创建地图 http://aescripts.com/aemap/。
- 或查看 Markus Bergelt http://aescripts.com/geolayers/ 的 GeoLayers,其功能相同但方式不同。
要将 price/size 添加到您的领域,您需要编写一些额外的脚本。我建议为此破解 Locations。
第 1814 行中的函数 add_projected_marker
应该是向新创建的图层添加其他表达式的良好切入点。
您可以将这样的表达式添加到比例 属性(其中 v 是您从 csv 中读取的值):
layer.transform.scale.expression = "var v = 50;\n[v,v];"
要将数据放入 locdata 对象,您需要修改第 1181 行中的函数 win.read_button.onClick
。
我是 AE 的新手。我知道 JS 表达式。我有编程背景。
我想要可视化以下类型的数据.....
我有大约 10,000 个不同的元素(城市中的位置)。这些元素中的每一个都发生在过去 10 年中(我将其压缩为 60 秒)。
当每个元素出现时..我想要一个小球体出现。这个球体将出现在 X,Y space 的某个地方(取决于它的纬度和经度)。
为了提供一些背景信息...数据是一系列房屋销售。卖价越大...球体越大....
因为元素较多。在 AE 中手动执行此操作是不可能的(也不可取)。
那么...我的问题是...我如何在 AE 中以编程方式执行此操作...?
有没有可能...?
或者我应该编写一个程序来自动创建某种类型的 SVG,然后我可以将其导入 AE...?
或者完全是另一种方法...?
欢迎任何关于基本方法的想法。
谢谢,
马克
Q1:所以...我的问题是...我如何在 AE 中以编程方式执行此操作...?
A1:您可以使用 ExtendScript API 到 运行 一个 Javascript 创建您的元素。
Q2:有没有可能……?
A2:是的。
问题 3:或者我是否应该编写一个程序来自动创建某种类型的 SVG,然后我可以将其导入 AE...?
A3:您不能将 SVG 导入 AE(据我所知)。
Q4:或者完全是另一种方法...?
A4:不。你来对地方了(恕我直言)。
您可以使用我的两个脚本(警告:无耻的自我推销)在 AE 合成中创建地图和位置标记。
- Locations 从 CSV 文件中为您创建标记 http://aescripts.com/locations/。
- AEMaps 从 geojson 文件为您创建地图 http://aescripts.com/aemap/。
- 或查看 Markus Bergelt http://aescripts.com/geolayers/ 的 GeoLayers,其功能相同但方式不同。
要将 price/size 添加到您的领域,您需要编写一些额外的脚本。我建议为此破解 Locations。
第 1814 行中的函数 add_projected_marker
应该是向新创建的图层添加其他表达式的良好切入点。
您可以将这样的表达式添加到比例 属性(其中 v 是您从 csv 中读取的值):
layer.transform.scale.expression = "var v = 50;\n[v,v];"
要将数据放入 locdata 对象,您需要修改第 1181 行中的函数 win.read_button.onClick
。