diff --git a/src/scripts/km-create-acclerate-pixel-map.jsx b/src/scripts/km-create-acclerate-pixel-map.jsx new file mode 100644 index 0000000..e625ebc --- /dev/null +++ b/src/scripts/km-create-acclerate-pixel-map.jsx @@ -0,0 +1,111 @@ +/** + * @description a headless script to do something cool in AE + * @name km-create-accelerate-pixel-map + * @author Kyle Harter + * @version 1.0.0 + * + * @license This script is provided "as is," without warranty of any kind, expressed or implied. In + * no event shall the author be held liable for any damages arising in any way from the use of this + * script. + * + * + * + * + */ + +(function () { + //@include "../library/km_helperFunctions.jsx"; + //@include "../library/km_scriptUI_functions.jsx"; + //@include "../library/km_utilityFunctions.jsx"; + //@include "../library/km_textAnimators.jsx"; + //@include "../library/km_systemFunctions.jsx"; + try { + app.beginUndoGroup("Create's pixel map for accelerate 2026"); + var km = kmFunction; + var kmScript = kmScriptUI; + var kmUtils = kmUtilityFunctions; + var kmTextAnims = KMTextAnimatorsLib; + var kmSystems = kmSystemsLib; + + var proj = km.getProj(); + if(!proj) return; + var activeComp = km.getActiveComp(proj); + if(!activeComp) return + + + var pixelMapData = [ + {header: { + size: [9120,320], + fillColor: [.97,.07,68], + position: [0,-640] + }}, + {hlOuter: { + size: [2240,1280], + fillColor: [.47,.14,.65], + position: [-4240,160] + }}, + {hrOuter: { + size: [2240,1280], + fillColor: [.47,.14,.65], + position: [4240,160] + }}, + {center: { + size: [6240,1280], + position: [0,160], + fillColor: [.01,.47,1] + }}, + ] + + var canvasName = 'PIXEL MAP' + buildCanvas(activeComp, canvasName, pixelMapData); + + + } catch (error) { + alert( + "An error occured on line: " + + error.line + + "\nError message: " + + error.message, + ); + } finally { + // this always runs no matter what + app.endUndoGroup(); + } + + + + function buildCanvas(comp, name, data) { + var canvasShape = comp.layers.addShape(); + canvasShape.name = name; + canvasShape.guideLayer = true; + + for(var i = 0; i< data.length; i++){ + var screen = data[i]; + for(var key in screen){ + var shapeRoot = canvasShape.property('ADBE Root Vectors Group'); + var screenGroup = shapeRoot.addProperty('ADBE Vector Group'); + screenGroup.name = Object.keys(screen)[0]; + var screenContents = screenGroup.property('ADBE Vectors Group'); + var rectGroup = screenContents.addProperty('ADBE Vector Group'); + rectGroup.name = screenGroup.name + '-shape-group' + var rectContents = rectGroup.property('ADBE Vectors Group'); + var screenShape = rectContents.addProperty('ADBE Vector Shape - Rect'); + var screenSize = screenShape.property('ADBE Vector Rect Size'); + screenSize.setValue(screen[key].size); + + var fillParentProperty = rectContents.addProperty('ADBE Vector Graphic - Fill'); + var fillColorProp = fillParentProperty.property('ADBE Vector Fill Color'); + fillColorProp.setValue(screen[key].fillColor) + + var shapeTransformGroup = rectGroup.property('ADBE Vector Transform Group'); + var shapeTransformPos = shapeTransformGroup.property('ADBE Vector Position'); + shapeTransformPos.setValue(screen[key].position); + } + } + + var canvasTransform = canvasShape.property('ADBE Transform Group'); + canvasTransform.property('ADBE Opacity').setValue(15); + + return; + } +})();