Note that there are some explanatory texts on larger screens.

plurals
  1. POControlling my output
    primarykey
    data
    text
    <p>Here is the code:</p> <pre><code>#!/usr/bin/env python import json import sys import os import parser sys.path.append('Z:\_protomotion\Prog\HelperScripts') import GetDir sys.path.append('Z:/Blender_Roto') filename = 'diving_board.shape4ae' infile = 'Z:/Blender_Roto/' #import bpy #from mathutils import Vector #below are taken from mocha export x_width =2048 y_height = 778 z_depth = 0 frame = 20 import re data_directory = 'Z:/Blender_Roto/' # windows data_file = 'diving_board.shape4ae' fullpath = data_directory + data_file print("====init=====") file = open(fullpath) for line in file: current_line = line # massive room for optimized code here. # this assumes the last element of the line containing the words # "Units Per Second" is the number we are looking for. # this is a non float number, generally. if current_line.find("Units Per Second") != -1: fps = line_split = float(current_line.split()[-1]) print("Frames Per Second:", fps) # source dimensions if current_line.find("Source Width") != -1: source_width = line_split = int(current_line.split()[-1]) print("Source Width:", source_width) if current_line.find("Source Height") != -1: source_height = line_split = int(current_line.split()[-1]) print("Source Height:", source_height) # aspect ratios if current_line.find("Source Pixel Aspect Ratio") != -1: source_px_aspect = line_split = int(current_line.split()[-1]) print("Source Pixel Aspect Ratio:", source_px_aspect) if current_line.find("Comp Pixel Aspect Ratio") != -1: comp_aspect = line_split = int(current_line.split()[-1]) print("Comp Pixel Aspect Ratio:", comp_aspect) # assumption, ae file can contain multiple mocha shapes. # without knowing the exact format i will limit the script # to deal with one mocha shape being animated N frames. # this gathers the shape details, and frame number but does not # include error checking yet. if current_line.find("XSpline") != -1: # record the frame number. print(len(points)) frame = re.search("\s*(\d*)\s*XSpline", current_line) if frame.group(1) != None: frame = frame.group(1) print("frame:", frame) # pick part the part of the line that deals with geometry match = re.search("XSpline\((.+)\)\n", current_line) line_to_strip = match.group(1) points = re.findall('(\(.*?\))', line_to_strip) (p1, p2, p3, p4, p5) = points print (p1) #print (p2) #print (p3) #print (p4) #print (p5) file.close() </code></pre> <p>Here is my output:</p> <pre><code>====init===== Frames Per Second: 24.0 Source Width: 2048 Source Height: 778 Source Pixel Aspect Ratio: 1 Comp Pixel Aspect Ratio: 1 5 frame: 20 (0.793803,0.136326,0,0.5,0) </code></pre> <p>from this output I want to be able to assign (0.793803) to the variable 'point1x' (0.136326) to the variable point1y (0) to the variable point1z (0.5) to the variable point1w and (0) to the variable point1s.</p> <p>So instead of just outputting <code>(0.793803,0.136326,0,0.5,0)</code> I want it to give me the values individually</p> <p>so:</p> <pre><code>point1x: 0.793803 point1y: 0.136326 point1z: 0 point1w: 0.5 point1s: 0 </code></pre> <p>Anyone know how I can do this?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload