Changeset 399
- Timestamp:
- 04/21/07 18:51:42 (5 years ago)
- Files:
-
- trunk/LaserTools/_DataStructures/LTFlashMovie.h (modified) (5 diffs)
- trunk/LaserTools/_DataStructures/LTFlashMovie.m (modified) (3 diffs)
- trunk/LaserTools/_DataStructures/LTFrame.h (modified) (2 diffs)
- trunk/LaserTools/_DataStructures/LTFrame.m (modified) (2 diffs)
- trunk/LaserTools/_DataStructures/LTShapeWithStyle.m (modified) (2 diffs)
- trunk/LaserTools/FlashImporterTest/FlashImporterTest.xcodeproj/project.pbxproj (modified) (3 diffs)
- trunk/LaserTools/FlashInspector/English.lproj/MainMenu.nib/info.nib (modified) (2 diffs)
- trunk/LaserTools/FlashInspector/English.lproj/MainMenu.nib/keyedobjects.nib (modified) (previous)
- trunk/LaserTools/FlashInspector/FlashInspector.xcodeproj/project.pbxproj (modified) (3 diffs)
- trunk/LaserTools/FlashInspector/LTRenderedContextView.h (modified) (3 diffs)
- trunk/LaserTools/FlashInspector/LTRenderedContextView.m (modified) (4 diffs)
- trunk/LaserTools/LaserTools.xcodeproj/kev.mode1 (modified) (23 diffs)
- trunk/LaserTools/LaserTools.xcodeproj/kev.pbxuser (modified) (11 diffs)
- trunk/LaserTools/_Runtime/LTBufferedRenderer.h (modified) (6 diffs)
- trunk/LaserTools/_Runtime/LTBufferedRenderer.m (modified) (13 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/LaserTools/_DataStructures/LTFlashMovie.h
r224 r399 21 21 LTDisplayList *_displayList; 22 22 LTSetBackgroundColorTag *_backgroundTag; 23 float _curveLinearizationQuality; 24 float _pointsPerUnitLength; 23 25 } 24 26 25 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//27 // -------------------------------------------------------------------------- // 26 28 // Core 27 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//29 // -------------------------------------------------------------------------- // 28 30 + (LTFlashMovie *)flashMovie; 29 31 + (LTFlashMovie *)flashMovieWithHeaderAttributes:(NSDictionary *)attributes; … … 31 33 - (id)initWithHeaderAttributes:(NSDictionary *)attributes; 32 34 33 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//35 // -------------------------------------------------------------------------- // 34 36 // Instance Variables 35 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//37 // -------------------------------------------------------------------------- // 36 38 - (NSDictionary *)headerAttributes; 37 39 - (void)setHeaderAttributes:(NSDictionary *)newAttributes; … … 43 45 - (LTColor *)backgroundColor; 44 46 - (NSRect)bounds; 47 - (float)curveLinearizationQuality; 48 - (void)setCurveLinearizationQuality:(float)newValue; 49 - (float)pointsPerUnitLength; 50 - (void)setPointsPerUnitLength:(float)newValue; 45 51 46 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//52 // -------------------------------------------------------------------------- // 47 53 // Object Repository 48 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//54 // -------------------------------------------------------------------------- // 49 55 - (BOOL)addObjectToRespository:(LTObject *)newObject; 50 56 - (BOOL)removeObjectFromRepository:(LTObject *)objectToRemove; … … 55 61 - (NSArray *)objectsInRepository; 56 62 57 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//63 // -------------------------------------------------------------------------- // 58 64 // Timeline 59 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//65 // -------------------------------------------------------------------------- // 60 66 - (void)addFrame:(LTFrame *)frame; 61 67 … … 65 71 - (NSArray *)frameInstancesAtIndex:(uint16_t)frame; 66 72 67 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//73 // -------------------------------------------------------------------------- // 68 74 // Other 69 // -------------------------------------------------------------------------- ---------------------------------------------------------------------------------------//75 // -------------------------------------------------------------------------- // 70 76 - (NSString *)description; 71 77 trunk/LaserTools/_DataStructures/LTFlashMovie.m
r224 r399 48 48 _timeline = [[NSMutableArray alloc] init]; // create a mutable array for the timeline 49 49 _repository = [[NSMutableDictionary alloc] init]; 50 51 _curveLinearizationQuality = LTCurveLinearizationQuality; 52 _pointsPerUnitLength = LTPointsPerUnitLength; 50 53 } 51 54 … … 125 128 return LTMakeNSRect(LTDecomposeRectDictionary([[self headerAttributes] 126 129 objectForKey:LTFrameSizeHeaderAttribute])); 130 } 131 132 /* 133 * So these quality controls, when changed, will mark all the frames in the 134 * movie as unrendered. This allows for changing the quality of a movie. 135 */ 136 - (float)curveLinearizationQuality 137 { 138 return _curveLinearizationQuality; 139 } 140 141 - (void)setCurveLinearizationQuality:(float)newValue 142 { 143 // as long as the value is different, mark the frames as needing display 144 if (newValue != _curveLinearizationQuality) 145 { 146 _curveLinearizationQuality = newValue; 147 [[self frames] makeObjectsPerformSelector:@selector(setIsRenderedWithNumber:) 148 withObject:[NSNumber numberWithBool:NO]]; 149 150 // Now, this might be a bad idea, and I might regret it later, but, here 151 // I am going to modify the shared instance of the bufferend renderer. 152 // So if you have multiple movies, and you change one, when you render 153 // another, the change will not be visible at all. Hmm. But, I am 154 // assuming that we are never going to have more than one instance of 155 // the movie that we need to modify. 156 [[LTBufferedRenderer sharedRenderer] 157 setCurveLinearizationQuality:newValue]; 158 } 159 } 160 161 - (float)pointsPerUnitLength 162 { 163 return _pointsPerUnitLength; 164 } 165 166 - (void)setPointsPerUnitLength:(float)newValue 167 { 168 // as long as the value is different, mark the frames as needing display 169 if (newValue != _pointsPerUnitLength) 170 { 171 _pointsPerUnitLength = newValue; 172 [[self frames] makeObjectsPerformSelector:@selector(setIsRenderedWithNumber:) 173 withObject:[NSNumber numberWithBool:NO]]; 174 [[LTBufferedRenderer sharedRenderer] 175 setPointsPerUnitLength:newValue]; 176 } 127 177 } 128 178 … … 237 287 { 238 288 if (![frame isRendered]) 239 [frame setPoints:[LTBufferedRenderer renderFrame:index inMovie:self]]; 289 { 290 [frame setPoints:[[LTBufferedRenderer sharedRenderer] renderFrame:index inMovie:self]]; 291 [frame setIsRendered:YES]; 292 } 240 293 241 294 return [frame points]; trunk/LaserTools/_DataStructures/LTFrame.h
r171 r399 16 16 NSMutableArray *_points; 17 17 NSMutableArray *_navigationCommands; 18 BOOL _isRendered; 18 19 } 19 20 … … 35 36 - (NSMutableArray *)points; 36 37 - (void)setPoints:(NSMutableArray *)newValue; 38 - (BOOL)isRendered; 39 - (void)setIsRendered:(BOOL)newValue; 40 - (void)setIsRenderedWithNumber:(NSNumber *)newValue; 37 41 38 42 // ----------------------------------------------------------------------------------------------------------------------------------------------------------------- // trunk/LaserTools/_DataStructures/LTFrame.m
r171 r399 28 28 _navigationCommands = nil; 29 29 _points = nil; 30 _isRendered = NO; 30 31 } 31 32 … … 119 120 - (BOOL)isRendered 120 121 { 121 return ([self points]) ? YES : NO; 122 //return ([self points]) ? YES : NO; 123 return _isRendered; 124 } 125 - (void)setIsRendered:(BOOL)newValue 126 { 127 _isRendered = newValue; 128 } 129 130 // Same as above, but it accepts an NSNumber 131 - (void)setIsRenderedWithNumber:(NSNumber *)newValue 132 { 133 [self setIsRendered:[newValue boolValue]]; 122 134 } 123 135 trunk/LaserTools/_DataStructures/LTShapeWithStyle.m
r394 r399 443 443 // to the linearizing algorithm, which will pass the points we need 444 444 NSPoint anchor = NSMakePoint(absoluteX, absoluteY); 445 NSArray *computedPoints = [ LTBufferedRenderer445 NSArray *computedPoints = [[LTBufferedRenderer sharedRenderer] 446 446 linearizeCurve:shapeRecord 447 447 fromAnchor:anchor]; … … 502 502 LTColor *copiedColor = [palette addAndCopyColor:[previousPoint color]]; 503 503 NSArray *subdividedPoints = 504 [ LTBufferedRenderersubdivideLineBetweenPoints:[previousPoint reversedNsPoint]504 [[LTBufferedRenderer sharedRenderer] subdivideLineBetweenPoints:[previousPoint reversedNsPoint] 505 505 end:endPoint color:copiedColor]; 506 506 trunk/LaserTools/FlashImporterTest/FlashImporterTest.xcodeproj/project.pbxproj
r245 r399 56 56 32CA4F630368D1EE00C91783 /* FlashImporterTest_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FlashImporterTest_Prefix.pch; sourceTree = "<group>"; }; 57 57 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; }; 58 8D1107320486CEB800E47090 /* Flash Importer Test.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Flash Importer Test.app"; sourceTree = BUILT_PRODUCTS_DIR; };58 8D1107320486CEB800E47090 /* FlashImporterTest.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = FlashImporterTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; 59 59 DE3F42C10B9D5E9D00B45C6B /* LaserTools.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = LaserTools.framework; path = ../build/Debug/LaserTools.framework; sourceTree = SOURCE_ROOT; }; 60 60 DE4641AE0B5755F500B17E0D /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; }; … … 107 107 isa = PBXGroup; 108 108 children = ( 109 8D1107320486CEB800E47090 /* Flash ImporterTest.app */,109 8D1107320486CEB800E47090 /* FlashImporterTest.app */, 110 110 ); 111 111 name = Products; … … 178 178 productInstallPath = "$(HOME)/Applications"; 179 179 productName = FlashImporterTest; 180 productReference = 8D1107320486CEB800E47090 /* Flash ImporterTest.app */;180 productReference = 8D1107320486CEB800E47090 /* FlashImporterTest.app */; 181 181 productType = "com.apple.product-type.application"; 182 182 }; trunk/LaserTools/FlashInspector/English.lproj/MainMenu.nib/info.nib
r398 r399 4 4 <dict> 5 5 <key>IBDocumentLocation</key> 6 <string> 402 234 356 240 0 0 1920 1178 </string>6 <string>20 367 356 240 0 0 1680 1028 </string> 7 7 <key>IBEditorPositions</key> 8 8 <dict> 9 9 <key>29</key> 10 <string>1 57 406 394 44 0 0 1920 1178 </string>10 <string>132 352 394 44 0 0 1680 1028 </string> 11 11 </dict> 12 12 <key>IBFramework Version</key> … … 18 18 </array> 19 19 <key>IBSystem Version</key> 20 <string>8P 135</string>20 <string>8P2137</string> 21 21 </dict> 22 22 </plist> trunk/LaserTools/FlashInspector/FlashInspector.xcodeproj/project.pbxproj
r398 r399 54 54 containerPortal = DED5D2370BD1BF6D0021BC21 /* DarkKitApp.xcodeproj */; 55 55 proxyType = 2; 56 remoteGlobalIDString = C4971DA70B9A2C3C00E57A56 /* DarkKit.framework */;56 remoteGlobalIDString = C4971DA70B9A2C3C00E57A56; 57 57 remoteInfo = DarkKit; 58 58 }; … … 61 61 containerPortal = DED5D2370BD1BF6D0021BC21 /* DarkKitApp.xcodeproj */; 62 62 proxyType = 2; 63 remoteGlobalIDString = 8D1107320486CEB800E47090 /* DarkKitApp.app */;63 remoteGlobalIDString = 8D1107320486CEB800E47090; 64 64 remoteInfo = DarkKitApp; 65 65 }; … … 68 68 containerPortal = DED5D2370BD1BF6D0021BC21 /* DarkKitApp.xcodeproj */; 69 69 proxyType = 1; 70 remoteGlobalIDString = C4971DA60B9A2C3C00E57A56 /* DarkKit */;70 remoteGlobalIDString = C4971DA60B9A2C3C00E57A56; 71 71 remoteInfo = DarkKit; 72 72 }; trunk/LaserTools/FlashInspector/LTRenderedContextView.h
r394 r399 4 4 #import <LaserTools/LaserTools.h> 5 5 6 /* 7 * Stores the different ways we can render the flash movie in the view 8 */ 9 typedef enum 10 { 11 LTRenderAsLinesStyle = 0, 12 LTRenderAsPointsStyle 13 } LTRenderedContextStyle; 14 15 /* 16 * This view is used to render a flash movie for preview, as it will appear on 17 * on the laser. 18 */ 6 19 @interface LTRenderedContextView : NSView 7 20 { 8 21 NSArray *_points; 9 22 LTFlashMovie *_associatedMovie; 23 LTRenderedContextStyle _renderStyle; 10 24 } 11 25 … … 13 27 NSPoint LTScaledPoint(NSPoint point, float w, float h); 14 28 15 #define LTRenderSegments 0 29 //#define LTRenderSegments 1 16 30 #define LTOvalPointRadius 1 17 31 … … 23 37 - (LTFlashMovie *)associatedMovie; 24 38 - (void)setAssociatedMovie:(LTFlashMovie *)newValue; 39 - (LTRenderedContextStyle)renderStyle; 40 - (void)setRenderStyle:(LTRenderedContextStyle)newValue; 25 41 26 42 // -------------------------------------------------------------------------- // trunk/LaserTools/FlashInspector/LTRenderedContextView.m
r394 r399 18 18 { 19 19 if ((self = [super initWithFrame:frameRect]) != nil) 20 { 20 21 _points = nil; 22 _renderStyle = LTRenderAsLinesStyle; 23 } 21 24 22 25 return self; … … 61 64 } 62 65 66 - (LTRenderedContextStyle)renderStyle 67 { 68 return _renderStyle; 69 } 70 71 - (void)setRenderStyle:(LTRenderedContextStyle)newValue 72 { 73 _renderStyle = newValue; 74 } 63 75 64 76 // -------------------------------------------------------------------------- // … … 111 123 // line segment in between the given point (YES), or if we are just going 112 124 // to draw an oval around the point (NO). 113 if ( LTRenderSegments)125 if ([self renderStyle] == LTRenderAsLinesStyle) 114 126 { 115 127 [segments lineToPoint:scaledPoint]; … … 143 155 } 144 156 145 if ( LTRenderSegments)157 if ([self renderStyle] == LTRenderAsLinesStyle) 146 158 [segments stroke]; 147 159 else trunk/LaserTools/LaserTools.xcodeproj/kev.mode1
r398 r399 186 186 <array/> 187 187 <key>OpenEditors</key> 188 <array> 189 <dict> 190 <key>Content</key> 191 <dict> 192 <key>PBXProjectModuleGUID</key> 193 <string>DEE5776E0BA0E12E00A7EFA0</string> 194 <key>PBXProjectModuleLabel</key> 195 <string>LTShapeWithStyle.m</string> 196 <key>PBXSplitModuleInNavigatorKey</key> 197 <dict> 198 <key>Split0</key> 199 <dict> 200 <key>PBXProjectModuleGUID</key> 201 <string>DEE5776F0BA0E12E00A7EFA0</string> 202 <key>PBXProjectModuleLabel</key> 203 <string>LTShapeWithStyle.m</string> 204 <key>_historyCapacity</key> 205 <integer>0</integer> 206 <key>bookmark</key> 207 <string>DEE577B50BA1DED100A7EFA0</string> 208 <key>history</key> 209 <array> 210 <string>DEE5776A0BA0E0E800A7EFA0</string> 211 </array> 212 </dict> 213 <key>SplitCount</key> 214 <string>1</string> 215 </dict> 216 <key>StatusBarVisibility</key> 217 <true/> 218 </dict> 219 <key>Geometry</key> 220 <dict> 221 <key>Frame</key> 222 <string>{{0, 20}, {986, 1077}}</string> 223 <key>PBXModuleWindowStatusBarHidden2</key> 224 <false/> 225 <key>RubberWindowFrame</key> 226 <string>186 60 986 1118 0 0 1920 1178 </string> 227 </dict> 228 </dict> 229 </array> 188 <array/> 230 189 <key>PerspectiveWidths</key> 231 190 <array> … … 239 198 <array> 240 199 <string>active-target-popup</string> 241 <string>acti on</string>200 <string>active-buildstyle-popup</string> 242 201 <string>NSToolbarFlexibleSpaceItem</string> 243 202 <string>buildOrClean</string> 244 203 <string>build-and-runOrDebug</string> 204 <string>clean-target</string> 205 <string>clean</string> 245 206 <string>com.apple.ide.PBXToolbarStopButton</string> 246 <string>get-info</string>247 <string>toggle-editor</string>248 207 <string>NSToolbarFlexibleSpaceItem</string> 249 208 <string>com.apple.pbx.toolbar.searchfield</string> … … 327 286 </array> 328 287 <key>RubberWindowFrame</key> 329 <string>1 73 183 946 691 0 0 1920 1178 </string>288 <string>130 139 946 691 0 0 1680 1028 </string> 330 289 </dict> 331 290 <key>Module</key> … … 374 333 <string>{{0, 0}, {695, 0}}</string> 375 334 <key>RubberWindowFrame</key> 376 <string>1 73 183 946 691 0 0 1920 1178 </string>335 <string>130 139 946 691 0 0 1680 1028 </string> 377 336 </dict> 378 337 <key>Module</key> … … 396 355 <string>{{0, 5}, {695, 646}}</string> 397 356 <key>RubberWindowFrame</key> 398 <string>1 73 183 946 691 0 0 1920 1178 </string>357 <string>130 139 946 691 0 0 1680 1028 </string> 399 358 </dict> 400 359 <key>Module</key> … … 420 379 <key>TableOfContents</key> 421 380 <array> 422 <string>DE E5774A0BA0DD8F00A7EFA0</string>381 <string>DE2A6D6F0BDACFCE00EB7A43</string> 423 382 <string>1CE0B1FE06471DED0097A5F4</string> 424 <string>DE E5774B0BA0DD8F00A7EFA0</string>383 <string>DE2A6D700BDACFCE00EB7A43</string> 425 384 <string>1CE0B20306471E060097A5F4</string> 426 385 <string>1CE0B20506471E060097A5F4</string> … … 556 515 <key>WindowOrderList</key> 557 516 <array> 517 <string>1C0AD2AF069F1E9B00FABCE6</string> 558 518 <string>1C530D57069F1CE1000CFCEE</string> 519 <string>1C0AD2B3069F1EA900FABCE6</string> 559 520 <string>DEC60E910B62DA270000F3A0</string> 560 521 <string>/Developer/Projects/LaserLine/LaserTools/LaserTools.xcodeproj</string> 561 <string>DEE5776E0BA0E12E00A7EFA0</string>562 522 </array> 563 523 <key>WindowString</key> 564 <string>1 73 183 946 691 0 0 1920 1178 </string>524 <string>130 139 946 691 0 0 1680 1028 </string> 565 525 <key>WindowTools</key> 566 526 <array> … … 583 543 <string>1CD0528F0623707200166675</string> 584 544 <key>PBXProjectModuleLabel</key> 585 <string> </string>545 <string>LTBufferedRenderer.h</string> 586 546 <key>StatusBarVisibility</key> 587 547 <true/> … … 592 552 <string>{{0, 0}, {1680, 445}}</string> 593 553 <key>RubberWindowFrame</key> 594 <string> 240 210 1680 968 0 0 1920 1178 </string>554 <string>0 60 1680 968 0 0 1680 1028 </string> 595 555 </dict> 596 556 <key>Module</key> … … 618 578 <string>{{0, 450}, {1680, 477}}</string> 619 579 <key>RubberWindowFrame</key> 620 <string> 240 210 1680 968 0 0 1920 1178 </string>580 <string>0 60 1680 968 0 0 1680 1028 </string> 621 581 </dict> 622 582 <key>Module</key> … … 641 601 <array> 642 602 <string>DEC60E910B62DA270000F3A0</string> 643 <string>DE E577520BA0DE1600A7EFA0</string>603 <string>DE2A6D6C0BDACFAD00EB7A43</string> 644 604 <string>1CD0528F0623707200166675</string> 645 605 <string>XCMainBuildResultsModuleGUID</string> … … 648 608 <string>xcode.toolbar.config.build</string> 649 609 <key>WindowString</key> 650 <string> 240 210 1680 968 0 0 1920 1178 </string>610 <string>0 60 1680 968 0 0 1680 1028 </string> 651 611 <key>WindowToolGUID</key> 652 612 <string>DEC60E910B62DA270000F3A0</string> … … 781 741 <array> 782 742 <dict> 743 <key>BecomeActive</key> 744 <true/> 783 745 <key>ContentConfiguration</key> 784 746 <dict> … … 786 748 <string>1CDD528C0622207200134675</string> 787 749 <key>PBXProjectModuleLabel</key> 788 <string>LT ShapeWithStyle.m</string>750 <string>LTBufferedRenderer.m</string> 789 751 <key>StatusBarVisibility</key> 790 752 <true/> … … 795 757 <string>{{0, 0}, {1680, 507}}</string> 796 758 <key>RubberWindowFrame</key> 797 <string> 240 154 1680 1024 0 0 1920 1178 </string>759 <string>0 4 1680 1024 0 0 1680 1028 </string> 798 760 </dict> 799 761 <key>Module</key> … … 807 769 </dict> 808 770 <dict> 809 <key>BecomeActive</key>810 <true/>811 771 <key>ContentConfiguration</key> 812 772 <dict> … … 821 781 <string>{{0, 512}, {1680, 471}}</string> 822 782 <key>RubberWindowFrame</key> 823 <string> 240 154 1680 1024 0 0 1920 1178 </string>783 <string>0 4 1680 1024 0 0 1680 1028 </string> 824 784 </dict> 825 785 <key>Module</key> … … 844 804 <array> 845 805 <string>1C530D57069F1CE1000CFCEE</string> 846 <string>DE E577670BA0E07500A7EFA0</string>847 <string>DE E577680BA0E07500A7EFA0</string>806 <string>DE2A6DE80BDAD59600EB7A43</string> 807 <string>DE2A6DE90BDAD59600EB7A43</string> 848 808 <string>1CDD528C0622207200134675</string> 849 809 <string>1CD0528E0623707200166675</string> 850 810 </array> 851 811 <key>WindowString</key> 852 <string> 240 154 1680 1024 0 0 1920 1178 </string>812 <string>0 4 1680 1024 0 0 1680 1028 </string> 853 813 <key>WindowToolGUID</key> 854 814 <string>1C530D57069F1CE1000CFCEE</string> … … 974 934 <string>{{0, 0}, {459, 159}}</string> 975 935 <key>RubberWindowFrame</key> 976 <string>1 26 869 459 200 0 0 1920 1178 </string>936 <string>105 737 459 200 0 0 1680 1028 </string> 977 937 </dict> 978 938 <key>Module</key> … … 997 957 <array> 998 958 <string>1C0AD2B3069F1EA900FABCE6</string> 999 <string>DE F093F70B9EAF0A003EE41F</string>959 <string>DE2A6D950BDAD01A00EB7A43</string> 1000 960 <string>1CD0528B0623707200166675</string> 1001 <string>DE F093F80B9EAF0A003EE41F</string>961 <string>DE2A6D960BDAD01A00EB7A43</string> 1002 962 </array> 1003 963 <key>ToolbarConfiguration</key> 1004 964 <string>xcode.toolbar.config.run</string> 1005 965 <key>WindowString</key> 1006 <string>1 26 869 459 200 0 0 1920 1178 </string>966 <string>105 737 459 200 0 0 1680 1028 </string> 1007 967 <key>WindowToolGUID</key> 1008 968 <string>1C0AD2B3069F1EA900FABCE6</string> … … 1350 1310 </array> 1351 1311 <key>RubberWindowFrame</key> 1352 <string> 44 791 630 352 0 0 1920 1178 </string>1312 <string>36 648 630 352 0 0 1680 1028 </string> 1353 1313 </dict> 1354 1314 <key>Module</key> … … 1373 1333 <array> 1374 1334 <string>1C0AD2AF069F1E9B00FABCE6</string> 1375 <string>DE F0937F0B9EAC08003EE41F</string>1335 <string>DE2A6E130BDAD69200EB7A43</string> 1376 1336 <string>1CA6456E063B45B4001379D8</string> 1377 1337 </array> … … 1379 1339 <string>xcode.toolbar.config.classbrowser</string> 1380 1340 <key>WindowString</key> 1381 <string> 44 791 630 352 0 0 1920 1178 </string>1341 <string>36 648 630 352 0 0 1680 1028 </string> 1382 1342 <key>WindowToolGUID</key> 1383 1343 <string>1C0AD2AF069F1E9B00FABCE6</string> trunk/LaserTools/LaserTools.xcodeproj/kev.pbxuser
r398 r399 3 3 0867D690FE84028FC02AAC07 /* Project object */ = { 4 4 activeBuildConfigurationName = Release; 5 activeBuildStyle = DE E577270BA0DD7800A7EFA0/* Development */;5 activeBuildStyle = DEBB6BC90BD180D2004DAE1B /* Development */; 6 6 activeTarget = 8DC2EF4F0486A6940098B216 /* LaserTools */; 7 7 addToTargets = ( … … 79 79 ); 80 80 }; 81 PBXPerProjectTemplateStateSaveDate = 19 5091832;82 PBXWorkspaceStateSaveDate = 19 5091832;81 PBXPerProjectTemplateStateSaveDate = 198888249; 82 PBXWorkspaceStateSaveDate = 198888249; 83 83 }; 84 84 perUserProjectItems = { 85 DEC5430A0B8955F3008198F6 /* PBXTextBookmark */ = DEC5430A0B8955F3008198F6 /* PBXTextBookmark */; 86 DEC5431A0B895640008198F6 /* PBXTextBookmark */ = DEC5431A0B895640008198F6 /* PBXTextBookmark */; 87 DEC5431C0B895640008198F6 /* PBXTextBookmark */ = DEC5431C0B895640008198F6 /* PBXTextBookmark */; 88 DEC543620B895753008198F6 /* PBXTextBookmark */ = DEC543620B895753008198F6 /* PBXTextBookmark */; 89 DEE5776A0BA0E0E800A7EFA0 /* PBXBookmark */ = DEE5776A0BA0E0E800A7EFA0 /* PBXBookmark */; 90 DEE577B50BA1DED100A7EFA0 /* PBXTextBookmark */ = DEE577B50BA1DED100A7EFA0 /* PBXTextBookmark */; 85 DE04EF600BD3E0EA00C9A953 = DE04EF600BD3E0EA00C9A953 /* PBXTextBookmark */; 86 DE2A6D650BDACFAD00EB7A43 /* PBXTextBookmark */ = DE2A6D650BDACFAD00EB7A43 /* PBXTextBookmark */; 87 DE2A6D660BDACFAD00EB7A43 /* PBXTextBookmark */ = DE2A6D660BDACFAD00EB7A43 /* PBXTextBookmark */; 88 DE2A6D670BDACFAD00EB7A43 /* PBXTextBookmark */ = DE2A6D670BDACFAD00EB7A43 /* PBXTextBookmark */; 89 DE2A6D680BDACFAD00EB7A43 /* PBXTextBookmark */ = DE2A6D680BDACFAD00EB7A43 /* PBXTextBookmark */; 90 DE2A6D690BDACFAD00EB7A43 /* PBXTextBookmark */ = DE2A6D690BDACFAD00EB7A43 /* PBXTextBookmark */; 91 DE2A6D6A0BDACFAD00EB7A43 /* PBXTextBookmark */ = DE2A6D6A0BDACFAD00EB7A43 /* PBXTextBookmark */; 92 DE2A6D6B0BDACFAD00EB7A43 /* PBXTextBookmark */ = DE2A6D6B0BDACFAD00EB7A43 /* PBXTextBookmark */; 93 DE2A6D730BDACFCE00EB7A43 /* PBXTextBookmark */ = DE2A6D730BDACFCE00EB7A43 /* PBXTextBookmark */; 94 DE2A6D740BDACFCE00EB7A43 /* PBXTextBookmark */ = DE2A6D740BDACFCE00EB7A43 /* PBXTextBookmark */; 95 DE2A6D750BDACFCE00EB7A43 /* PBXTextBookmark */ = DE2A6D750BDACFCE00EB7A43 /* PBXTextBookmark */; 96 DE2A6D760BDACFCE00EB7A43 /* PBXTextBookmark */ = DE2A6D760BDACFCE00EB7A43 /* PBXTextBookmark */; 97 DE2A6D770BDACFCE00EB7A43 /* PBXTextBookmark */ = DE2A6D770BDACFCE00EB7A43 /* PBXTextBookmark */; 98 DE2A6D780BDACFCE00EB7A43 /* PBXTextBookmark */ = DE2A6D780BDACFCE00EB7A43 /* PBXTextBookmark */; 99 DE2A6D790BDACFCE00EB7A43 /* PBXTextBookmark */ = DE2A6D790BDACFCE00EB7A43 /* PBXTextBookmark */; 100 DE2A6D940BDAD01A00EB7A43 /* PBXTextBookmark */ = DE2A6D940BDAD01A00EB7A43 /* PBXTextBookmark */; 101 DE2A6D970BDAD01E00EB7A43 /* PBXTextBookmark */ = DE2A6D970BDAD01E00EB7A43 /* PBXTextBookmark */; 102 DE2A6DA40BDAD12300EB7A43 /* PBXTextBookmark */ = DE2A6DA40BDAD12300EB7A43 /* PBXTextBookmark */; 103 DE2A6DA60BDAD12900EB7A43 /* PBXTextBookmark */ = DE2A6DA60BDAD12900EB7A43 /* PBXTextBookmark */; 104 DE2A6DA70BDAD12900EB7A43 /* PBXTextBookmark */ = DE2A6DA70BDAD12900EB7A43 /* PBXTextBookmark */; 105 DE2A6DA80BDAD12900EB7A43 /* PBXTextBookmark */ = DE2A6DA80BDAD12900EB7A43 /* PBXTextBookmark */; 106 DE2A6DA90BDAD12900EB7A43 /* PBXTextBookmark */ = DE2A6DA90BDAD12900EB7A43 /* PBXTextBookmark */; 107 DE2A6DAA0BDAD12900EB7A43 /* PBXTextBookmark */ = DE2A6DAA0BDAD12900EB7A43 /* PBXTextBookmark */; 108 DE2A6DC00BDAD1B400EB7A43 /* PBXTextBookmark */ = DE2A6DC00BDAD1B400EB7A43 /* PBXTextBookmark */; 109 DE2A6DC60BDAD1FA00EB7A43 /* PBXTextBookmark */ = DE2A6DC60BDAD1FA00EB7A43 /* PBXTextBookmark */; 110 DE2A6DE00BDAD59600EB7A43 /* PBXTextBookmark */ = DE2A6DE00BDAD59600EB7A43 /* PBXTextBookmark */; 111 DE2A6DE20BDAD59600EB7A43 /* PBXTextBookmark */ = DE2A6DE20BDAD59600EB7A43 /* PBXTextBookmark */; 112 DE2A6DE30BDAD59600EB7A43 /* PBXTextBookmark */ = DE2A6DE30BDAD59600EB7A43 /* PBXTextBookmark */; 113 DE2A6DE40BDAD59600EB7A43 /* PBXTextBookmark */ = DE2A6DE40BDAD59600EB7A43 /* PBXTextBookmark */; 114 DE2A6DE50BDAD59600EB7A43 /* PBXTextBookmark */ = DE2A6DE50BDAD59600EB7A43 /* PBXTextBookmark */; 115 DE2A6DE60BDAD59600EB7A43 /* PBXTextBookmark */ = DE2A6DE60BDAD59600EB7A43 /* PBXTextBookmark */; 116 DE2A6DE70BDAD59600EB7A43 /* PBXTextBookmark */ = DE2A6DE70BDAD59600EB7A43 /* PBXTextBookmark */; 117 DE2A6DF10BDAD5DA00EB7A43 /* PBXTextBookmark */ = DE2A6DF10BDAD5DA00EB7A43 /* PBXTextBookmark */; 118 DE2A6DF20BDAD5DA00EB7A43 /* PBXTextBookmark */ = DE2A6DF20BDAD5DA00EB7A43 /* PBXTextBookmark */; 119 DE2A6DF30BDAD5DA00EB7A43 /* PBXTextBookmark */ = DE2A6DF30BDAD5DA00EB7A43 /* PBXTextBookmark */; 120 DE2A6DF90BDAD62900EB7A43 /* PBXTextBookmark */ = DE2A6DF90BDAD62900EB7A43 /* PBXTextBookmark */; 121 DE2A6DFA0BDAD62900EB7A43 /* PBXTextBookmark */ = DE2A6DFA0BDAD62900EB7A43 /* PBXTextBookmark */; 122 DE2A6E030BDAD68400EB7A43 /* PBXTextBookmark */ = DE2A6E030BDAD68400EB7A43 /* PBXTextBookmark */; 123 DE2A6E040BDAD68400EB7A43 /* PBXTextBookmark */ = DE2A6E040BDAD68400EB7A43 /* PBXTextBookmark */; 124 DE2A6E050BDAD68400EB7A43 /* PBXTextBookmark */ = DE2A6E050BDAD68400EB7A43 /* PBXTextBookmark */; 125 DE2A6E060BDAD68400EB7A43 /* PBXTextBookmark */ = DE2A6E060BDAD68400EB7A43 /* PBXTextBookmark */; 126 DE2A6E070BDAD68400EB7A43 /* PBXTextBookmark */ = DE2A6E070BDAD68400EB7A43 /* PBXTextBookmark */; 127 DE2A6E080BDAD68400EB7A43 /* PBXTextBookmark */ = DE2A6E080BDAD68400EB7A43 /* PBXTextBookmark */; 128 DE2A6E090BDAD68400EB7A43 /* PBXTextBookmark */ = DE2A6E090BDAD68400EB7A43 /* PBXTextBookmark */; 129 DE2A6E0D0BDAD68B00EB7A43 /* PBXTextBookmark */ = DE2A6E0D0BDAD68B00EB7A43 /* PBXTextBookmark */; 130 DE2A6E0E0BDAD68B00EB7A43 /* PBXTextBookmark */ = DE2A6E0E0BDAD68B00EB7A43 /* PBXTextBookmark */; 131 DE2A6E110BDAD69200EB7A43 /* PBXTextBookmark */ = DE2A6E110BDAD69200EB7A43 /* PBXTextBookmark */; 132 DE2A6E120BDAD69200EB7A43 /* PBXTextBookmark */ = DE2A6E120BDAD69200EB7A43 /* PBXTextBookmark */; 133 DE2A6E1D0BDAD6DB00EB7A43 /* PBXTextBookmark */ = DE2A6E1D0BDAD6DB00EB7A43 /* PBXTextBookmark */; 134 DE2A6E1E0BDAD6DB00EB7A43 /* PBXTextBookmark */ = DE2A6E1E0BDAD6DB00EB7A43 /* PBXTextBookmark */; 135 DE2A6E1F0BDAD6DB00EB7A43 /* PBXTextBookmark */ = DE2A6E1F0BDAD6DB00EB7A43 /* PBXTextBookmark */; 136 DE2A6E200BDAD6DB00EB7A43 /* PBXTextBookmark */ = DE2A6E200BDAD6DB00EB7A43 /* PBXTextBookmark */; 137 DE2A6E210BDAD6DB00EB7A43 /* PBXTextBookmark */ = DE2A6E210BDAD6DB00EB7A43 /* PBXTextBookmark */; 138 DE2A6E250BDAD6E600EB7A43 /* PBXTextBookmark */ = DE2A6E250BDAD6E600EB7A43 /* PBXTextBookmark */; 139 DE2A6E260BDAD6E600EB7A43 /* PBXTextBookmark */ = DE2A6E260BDAD6E600EB7A43 /* PBXTextBookmark */; 140 DE2A6E270BDAD6E600EB7A43 /* PBXTextBookmark */ = DE2A6E270BDAD6E600EB7A43 /* PBXTextBookmark */; 141 DE2A6E280BDAD6E600EB7A43 /* PBXTextBookmark */ = DE2A6E280BDAD6E600EB7A43 /* PBXTextBookmark */; 142 DE2A6E290BDAD6E600EB7A43 /* PBXTextBookmark */ = DE2A6E290BDAD6E600EB7A43 /* PBXTextBookmark */; 143 DE2A6E2A0BDAD6E600EB7A43 /* PBXTextBookmark */ = DE2A6E2A0BDAD6E600EB7A43 /* PBXTextBookmark */; 144 DE2A6E2B0BDAD6E600EB7A43 /* PBXTextBookmark */ = DE2A6E2B0BDAD6E600EB7A43 /* PBXTextBookmark */; 145 DE2A6E2C0BDAD6E600EB7A43 /* PBXTextBookmark */ = DE2A6E2C0BDAD6E600EB7A43 /* PBXTextBookmark */; 146 DE2A6E3A0BDAD71500EB7A43 /* PBXTextBookmark */ = DE2A6E3A0BDAD71500EB7A43 /* PBXTextBookmark */; 147 DE2A6E4D0BDAD77600EB7A43 /* PBXTextBookmark */ = DE2A6E4D0BDAD77600EB7A43 /* PBXTextBookmark */; 148 DE2A6E4E0BDAD77600EB7A43 /* PBXTextBookmark */ = DE2A6E4E0BDAD77600EB7A43 /* PBXTextBookmark */; 149 DE2A6E4F0BDAD77600EB7A43 /* PBXTextBookmark */ = DE2A6E4F0BDAD77600EB7A43 /* PBXTextBookmark */; 150 DE2A6E500BDAD77600EB7A43 /* PBXTextBookmark */ = DE2A6E500BDAD77600EB7A43 /* PBXTextBookmark */; 151 DE2A6E510BDAD77600EB7A43 /* PBXTextBookmark */ = DE2A6E510BDAD77600EB7A43 /* PBXTextBookmark */; 152 DE2A6E520BDAD77600EB7A43 /* PBXTextBookmark */ = DE2A6E520BDAD77600EB7A43 /* PBXTextBookmark */; 153 DE2A6E550BDAD78500EB7A43 /* PBXTextBookmark */ = DE2A6E550BDAD78500EB7A43 /* PBXTextBookmark */; 154 DE2A6E580BDAD78D00EB7A43 /* PBXTextBookmark */ = DE2A6E580BDAD78D00EB7A43 /* PBXTextBookmark */; 155 DE2A6E590BDAD78D00EB7A43 /* PBXTextBookmark */ = DE2A6E590BDAD78D00EB7A43 /* PBXTextBookmark */; 156 DE2A6E5A0BDAD78D00EB7A43 /* PBXTextBookmark */ = DE2A6E5A0BDAD78D00EB7A43 /* PBXTextBookmark */; 157 DE2A6E600BDAD7E000EB7A43 /* PBXTextBookmark */ = DE2A6E600BDAD7E000EB7A43 /* PBXTextBookmark */; 158 DE2A6E610BDAD7E000EB7A43 /* PBXTextBookmark */ = DE2A6E610BDAD7E000EB7A43 /* PBXTextBookmark */; 159 DE2A6E670BDAD7EE00EB7A43 /* PBXTextBookmark */ = DE2A6E670BDAD7EE00EB7A43 /* PBXTextBookmark */; 160 DE2A6E680BDAD7EE00EB7A43 /* PBXTextBookmark */ = DE2A6E680BDAD7EE00EB7A43 /* PBXTextBookmark */; 161 DE2A6E6A0BDAD7FD00EB7A43 /* PBXTextBookmark */ = DE2A6E6A0BDAD7FD00EB7A43 /* PBXTextBookmark */; 162 DE2A6E6B0BDAD7FD00EB7A43 /* PBXTextBookmark */ = DE2A6E6B0BDAD7FD00EB7A43 /* PBXTextBookmark */; 163 DE2A6E6C0BDAD7FD00EB7A43 /* PBXTextBookmark */ = DE2A6E6C0BDAD7FD00EB7A43 /* PBXTextBookmark */; 164 DE2A6E720BDAD81D00EB7A43 /* PBXTextBookmark */ = DE2A6E720BDAD81D00EB7A43 /* PBXTextBookmark */; 165 DE2A6E730BDAD81D00EB7A43 /* PBXTextBookmark */ = DE2A6E730BDAD81D00EB7A43 /* PBXTextBookmark */; 166 DE2A6E740BDAD81D00EB7A43 /* PBXTextBookmark */ = DE2A6E740BDAD81D00EB7A43 /* PBXTextBookmark */; 167 DE2A6E7B0BDAD86300EB7A43 /* PBXBookmark */ = DE2A6E7B0BDAD86300EB7A43 /* PBXBookmark */; 168 DE2A6E810BDAD8DF00EB7A43 /* PBXTextBookmark */ = DE2A6E810BDAD8DF00EB7A43 /* PBXTextBookmark */; 169 DE2A6E860BDAD91600EB7A43 /* PBXBookmark */ = DE2A6E860BDAD91600EB7A43 /* PBXBookmark */; 170 DE2A6E8C0BDAD93800EB7A43 /* PBXTextBookmark */ = DE2A6E8C0BDAD93800EB7A43 /* PBXTextBookmark */; 171 DE2A6E910BDAD94300EB7A43 /* PBXTextBookmark */ = DE2A6E910BDAD94300EB7A43 /* PBXTextBookmark */; 172 DE2A6EB30BDADA8700EB7A43 /* PBXTextBookmark */ = DE2A6EB30BDADA8700EB7A43 /* PBXTextBookmark */; 173 DE2A6EB40BDADA8700EB7A43 /* PBXTextBookmark */ = DE2A6EB40BDADA8700EB7A43 /* PBXTextBookmark */; 174 DE2A6EB50BDADA8700EB7A43 /* PBXTextBookmark */ = DE2A6EB50BDADA8700EB7A43 /* PBXTextBookmark */; 175 DE2A6EB60BDADA8700EB7A43 /* PBXTextBookmark */ = DE2A6EB60BDADA8700EB7A43 /* PBXTextBookmark */; 176 DEC5430A0B8955F3008198F6 = DEC5430A0B8955F3008198F6 /* PBXTextBookmark */; 177 DEC5431A0B895640008198F6 = DEC5431A0B895640008198F6 /* PBXTextBookmark */; 178 DEC5431C0B895640008198F6 = DEC5431C0B895640008198F6 /* PBXTextBookmark */; 179 DEC543620B895753008198F6 = DEC543620B895753008198F6 /* PBXTextBookmark */; 180 DEE5776A0BA0E0E800A7EFA0 = DEE5776A0BA0E0E800A7EFA0 /* PBXBookmark */; 181 DEE577B50BA1DED100A7EFA0 = DEE577B50BA1DED100A7EFA0 /* PBXTextBookmark */; 91 182 }; 92 183 sourceControlManager = DEC60E510B62D8530000F3A0 /* Source Control */; … … 96 187 8DC2EF4F0486A6940098B216 /* LaserTools */ = { 97 188 activeExec = 0; 189 }; 190 DE04EF600BD3E0EA00C9A953 /* PBXTextBookmark */ = { 191 isa = PBXTextBookmark; 192 fRef = DE8DEBDB0B6306E500C8C2DA /* LTShapeWithStyle.m */; 193 name = "LTShapeWithStyle.m: 91"; 194 rLen = 0; 195 rLoc = 3183; 196 rType = 0; 197 vrLen = 3057; 198 vrLoc = 1067; 98 199 }; 99 200 DE13B4B70B78110900612994 /* LTBitStream.h */ = { … … 113 214 }; 114 215 }; 216 DE2A6D650BDACFAD00EB7A43 /* PBXTextBookmark */ = { 217 isa = PBXTextBookmark; 218 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 219 name = "LTBufferedRenderer.h: LTPointsPerUnitLength"; 220 rLen = 0; 221 rLoc = 667; 222 rType = 0; 223 vrLen = 821; 224 vrLoc = 274; 225 }; 226 DE2A6D660BDACFAD00EB7A43 /* PBXTextBookmark */ = { 227 isa = PBXTextBookmark; 228 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 229 name = "[frame setPoints:[LTBufferedRenderer renderFrame:index inMovie:self]];"; 230 rLen = 125; 231 rLoc = 8618; 232 rType = 0; 233 vrLen = 976; 234 vrLoc = 7432; 235 }; 236 DE2A6D670BDACFAD00EB7A43 /* PBXTextBookmark */ = { 237 isa = PBXTextBookmark; 238 comments = "warning: passing argument 1 of 'setColor:' from distinct Objective-C type"; 239 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 240 rLen = 1; 241 rLoc = 125; 242 rType = 1; 243 }; 244 DE2A6D680BDACFAD00EB7A43 /* PBXTextBookmark */ = { 245 isa = PBXTextBookmark; 246 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 247 name = "LTBufferedRenderer.h: LTPointsPerUnitLength"; 248 rLen = 0; 249 rLoc = 667; 250 rType = 0; 251 vrLen = 821; 252 vrLoc = 274; 253 }; 254 DE2A6D690BDACFAD00EB7A43 /* PBXTextBookmark */ = { 255 isa = PBXTextBookmark; 256 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 257 name = "float signY = (signbit(deltaY) == 0) ? 1.0 : -1.0;"; 258 rLen = 54; 259 rLoc = 11743; 260 rType = 0; 261 vrLen = 1072; 262 vrLoc = 10222; 263 }; 264 DE2A6D6A0BDACFAD00EB7A43 /* PBXTextBookmark */ = { 265 isa = PBXTextBookmark; 266 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 267 name = "[frame setPoints:[LTBufferedRenderer renderFrame:index inMovie:self]];"; 268 rLen = 125; 269 rLoc = 8618; 270 rType = 0; 271 vrLen = 976; 272 vrLoc = 7432; 273 }; 274 DE2A6D6B0BDACFAD00EB7A43 /* PBXTextBookmark */ = { 275 isa = PBXTextBookmark; 276 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 277 name = "[[points lastObject] setColor:[LTColor colorWithZeroIntensity]];"; 278 rLen = 70; 279 rLoc = 3736; 280 rType = 0; 281 vrLen = 839; 282 vrLoc = 2204; 283 }; 284 DE2A6D730BDACFCE00EB7A43 /* PBXTextBookmark */ = { 285 isa = PBXTextBookmark; 286 fRef = DEC60E630B62D9610000F3A0 /* LTFlashMovie.h */; 287 name = "LTFlashMovie.h: 75"; 288 rLen = 0; 289 rLoc = 2759; 290 rType = 0; 291 vrLen = 2586; 292 vrLoc = 207; 293 }; 294 DE2A6D740BDACFCE00EB7A43 /* PBXTextBookmark */ = { 295 isa = PBXTextBookmark; 296 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 297 name = "LTFlashMovie.m: 144"; 298 rLen = 0; 299 rLoc = 4715; 300 rType = 0; 301 vrLen = 1644; 302 vrLoc = 2509; 303 }; 304 DE2A6D750BDACFCE00EB7A43 /* PBXTextBookmark */ = { 305 isa = PBXTextBookmark; 306 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 307 name = "LTFlashMovie.m: 203"; 308 rLen = 52; 309 rLoc = 7519; 310 rType = 0; 311 vrLen = 2141; 312 vrLoc = 0; 313 }; 314 DE2A6D760BDACFCE00EB7A43 /* PBXTextBookmark */ = { 315 isa = PBXTextBookmark; 316 fRef = DEC60E630B62D9610000F3A0 /* LTFlashMovie.h */; 317 name = "LTFlashMovie.h: 75"; 318 rLen = 0; 319 rLoc = 2759; 320 rType = 0; 321 vrLen = 2565; 322 vrLoc = 228; 323 }; 324 DE2A6D770BDACFCE00EB7A43 /* PBXTextBookmark */ = { 325 isa = PBXTextBookmark; 326 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 327 name = "LTFlashMovie.m: 144"; 328 rLen = 0; 329 rLoc = 4715; 330 rType = 0; 331 vrLen = 1644; 332 vrLoc = 2509; 333 }; 334 DE2A6D780BDACFCE00EB7A43 /* PBXTextBookmark */ = { 335 isa = PBXTextBookmark; 336 fRef = DEC60E630B62D9610000F3A0 /* LTFlashMovie.h */; 337 name = "LTFlashMovie.h: 75"; 338 rLen = 0; 339 rLoc = 2759; 340 rType = 0; 341 vrLen = 2586; 342 vrLoc = 207; 343 }; 344 DE2A6D790BDACFCE00EB7A43 /* PBXTextBookmark */ = { 345 isa = PBXTextBookmark; 346 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 347 name = "LTFlashMovie.m: 276"; 348 rLen = 0; 349 rLoc = 8617; 350 rType = 0; 351 vrLen = 2376; 352 vrLoc = 6752; 353 }; 354 DE2A6D940BDAD01A00EB7A43 /* PBXTextBookmark */ = { 355 isa = PBXTextBookmark; 356 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 357 name = "[[points lastObject] setColor:[LTColor colorWithZeroIntensity]];"; 358 rLen = 70; 359 rLoc = 3736; 360 rType = 0; 361 vrLen = 839; 362 vrLoc = 2204; 363 }; 364 DE2A6D970BDAD01E00EB7A43 /* PBXTextBookmark */ = { 365 isa = PBXTextBookmark; 366 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 367 name = "LTFlashMovie.m: 276"; 368 rLen = 0; 369 rLoc = 8617; 370 rType = 0; 371 vrLen = 2376; 372 vrLoc = 6752; 373 }; 374 DE2A6DA40BDAD12300EB7A43 /* PBXTextBookmark */ = { 375 isa = PBXTextBookmark; 376 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 377 name = "[[points lastObject] setColor:[LTColor colorWithZeroIntensity]];"; 378 rLen = 70; 379 rLoc = 3736; 380 rType = 0; 381 vrLen = 839; 382 vrLoc = 2204; 383 }; 384 DE2A6DA60BDAD12900EB7A43 /* PBXTextBookmark */ = { 385 isa = PBXTextBookmark; 386 fRef = DEC60E630B62D9610000F3A0 /* LTFlashMovie.h */; 387 name = "LTFlashMovie.h: setPointsPerUnitLength:"; 388 rLen = 0; 389 rLoc = 1627; 390 rType = 0; 391 vrLen = 2611; 392 vrLoc = 177; 393 }; 394 DE2A6DA70BDAD12900EB7A43 /* PBXTextBookmark */ = { 395 isa = PBXTextBookmark; 396 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 397 name = "LTFlashMovie.m: 276"; 398 rLen = 0; 399 rLoc = 8617; 400 rType = 0; 401 vrLen = 2376; 402 vrLoc = 6752; 403 }; 404 DE2A6DA80BDAD12900EB7A43 /* PBXTextBookmark */ = { 405 isa = PBXTextBookmark; 406 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 407 name = "LTFlashMovie.m: 276"; 408 rLen = 0; 409 rLoc = 8617; 410 rType = 0; 411 vrLen = 2376; 412 vrLoc = 6752; 413 }; 414 DE2A6DA90BDAD12900EB7A43 /* PBXTextBookmark */ = { 415 isa = PBXTextBookmark; 416 fRef = DEC60E630B62D9610000F3A0 /* LTFlashMovie.h */; 417 name = "LTFlashMovie.h: setPointsPerUnitLength:"; 418 rLen = 0; 419 rLoc = 1627; 420 rType = 0; 421 vrLen = 2611; 422 vrLoc = 177; 423 }; 424 DE2A6DAA0BDAD12900EB7A43 /* PBXTextBookmark */ = { 425 isa = PBXTextBookmark; 426 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 427 name = "LTFlashMovie.m: 140"; 428 rLen = 0; 429 rLoc = 3941; 430 rType = 0; 431 vrLen = 1952; 432 vrLoc = 2755; 433 }; 434 DE2A6DC00BDAD1B400EB7A43 /* PBXTextBookmark */ = { 435 isa = PBXTextBookmark; 436 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 437 name = "LTFlashMovie.m: 279"; 438 rLen = 0; 439 rLoc = 8736; 440 rType = 0; 441 vrLen = 2391; 442 vrLoc = 6784; 443 }; 444 DE2A6DC60BDAD1FA00EB7A43 /* PBXTextBookmark */ = { 445 isa = PBXTextBookmark; 446 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 447 name = "LTFlashMovie.m: 277"; 448 rLen = 0; 449 rLoc = 8617; 450 rType = 0; 451 vrLen = 1757; 452 vrLoc = 6383; 453 }; 454 DE2A6DE00BDAD59600EB7A43 /* PBXTextBookmark */ = { 455 isa = PBXTextBookmark; 456 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 457 name = "[[points lastObject] setColor:[LTColor colorWithZeroIntensity]];"; 458 rLen = 70; 459 rLoc = 3736; 460 rType = 0; 461 vrLen = 839; 462 vrLoc = 2204; 463 }; 464 DE2A6DE20BDAD59600EB7A43 /* PBXTextBookmark */ = { 465 isa = PBXTextBookmark; 466 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 467 name = "[LTBufferedRenderer"; 468 rLen = 36; 469 rLoc = 9188; 470 rType = 0; 471 vrLen = 1663; 472 vrLoc = 7310; 473 }; 474 DE2A6DE30BDAD59600EB7A43 /* PBXTextBookmark */ = { 475 isa = PBXTextBookmark; 476 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 477 name = "[LTBufferedRenderer"; 478 rLen = 36; 479 rLoc = 8638; 480 rType = 0; 481 vrLen = 1055; 482 vrLoc = 7452; 483 }; 484 DE2A6DE40BDAD59600EB7A43 /* PBXTextBookmark */ = { 485 isa = PBXTextBookmark; 486 fRef = DE8DEBDB0B6306E500C8C2DA /* LTShapeWithStyle.m */; 487 rLen = 20; 488 rLoc = 19095; 489 rType = 0; 490 }; 491 DE2A6DE50BDAD59600EB7A43 /* PBXTextBookmark */ = { 492 isa = PBXTextBookmark; 493 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 494 name = "[LTBufferedRenderer"; 495 rLen = 36; 496 rLoc = 9188; 497 rType = 0; 498 vrLen = 1663; 499 vrLoc = 7310; 500 }; 501 DE2A6DE60BDAD59600EB7A43 /* PBXTextBookmark */ = { 502 isa = PBXTextBookmark; 503 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 504 name = "[LTBufferedRenderer"; 505 rLen = 36; 506 rLoc = 8638; 507 rType = 0; 508 vrLen = 1055; 509 vrLoc = 7452; 510 }; 511 DE2A6DE70BDAD59600EB7A43 /* PBXTextBookmark */ = { 512 isa = PBXTextBookmark; 513 fRef = DE8DEBDB0B6306E500C8C2DA /* LTShapeWithStyle.m */; 514 name = "[LTBufferedRenderer"; 515 rLen = 20; 516 rLoc = 19095; 517 rType = 0; 518 vrLen = 1433; 519 vrLoc = 18294; 520 }; 521 DE2A6DF10BDAD5DA00EB7A43 /* PBXTextBookmark */ = { 522 isa = PBXTextBookmark; 523 comments = "warning: unused variable 'signX'"; 524 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 525 rLen = 1; 526 rLoc = 356; 527 rType = 1; 528 }; 529 DE2A6DF20BDAD5DA00EB7A43 /* PBXTextBookmark */ = { 530 isa = PBXTextBookmark; 531 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 532 name = "LTBufferedRenderer.m: 318"; 533 rLen = 0; 534 rLoc = 11746; 535 rType = 0; 536 vrLen = 1032; 537 vrLoc = 10220; 538 }; 539 DE2A6DF30BDAD5DA00EB7A43 /* PBXTextBookmark */ = { 540 isa = PBXTextBookmark; 541 fRef = DE8DEBDB0B6306E500C8C2DA /* LTShapeWithStyle.m */; 542 name = "[LTBufferedRenderer"; 543 rLen = 20; 544 rLoc = 19095; 545 rType = 0; 546 vrLen = 1433; 547 vrLoc = 18294; 548 }; 549 DE2A6DF90BDAD62900EB7A43 /* PBXTextBookmark */ = { 550 isa = PBXTextBookmark; 551 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 552 name = "LTBufferedRenderer.m: 328"; 553 rLen = 0; 554 rLoc = 11746; 555 rType = 0; 556 vrLen = 1026; 557 vrLoc = 10038; 558 }; 559 DE2A6DFA0BDAD62900EB7A43 /* PBXTextBookmark */ = { 560 isa = PBXTextBookmark; 561 fRef = DE8DEBDB0B6306E500C8C2DA /* LTShapeWithStyle.m */; 562 name = "[LTBufferedRenderer"; 563 rLen = 20; 564 rLoc = 19095; 565 rType = 0; 566 vrLen = 1433; 567 vrLoc = 18294; 568 }; 569 DE2A6E030BDAD68400EB7A43 /* PBXTextBookmark */ = { 570 isa = PBXTextBookmark; 571 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 572 name = "LTBufferedRenderer.m: 333"; 573 rLen = 0; 574 rLoc = 11746; 575 rType = 0; 576 vrLen = 949; 577 vrLoc = 10122; 578 }; 579 DE2A6E040BDAD68400EB7A43 /* PBXTextBookmark */ = { 580 isa = PBXTextBookmark; 581 fRef = DE8DEBDB0B6306E500C8C2DA /* LTShapeWithStyle.m */; 582 name = "LTShapeWithStyle.m: 445"; 583 rLen = 0; 584 rLoc = 16842; 585 rType = 0; 586 vrLen = 1610; 587 vrLoc = 15809; 588 }; 589 DE2A6E050BDAD68400EB7A43 /* PBXTextBookmark */ = { 590 isa = PBXTextBookmark; 591 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 592 name = "LTFlashMovie.m: 277"; 593 rLen = 0; 594 rLoc = 8674; 595 rType = 0; 596 vrLen = 1072; 597 vrLoc = 7452; 598 }; 599 DE2A6E060BDAD68400EB7A43 /* PBXTextBookmark */ = { 600 isa = PBXTextBookmark; 601 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 602 rLen = 36; 603 rLoc = 3557; 604 rType = 0; 605 }; 606 DE2A6E070BDAD68400EB7A43 /* PBXTextBookmark */ = { 607 isa = PBXTextBookmark; 608 fRef = DE8DEBDB0B6306E500C8C2DA /* LTShapeWithStyle.m */; 609 name = "LTShapeWithStyle.m: 445"; 610 rLen = 0; 611 rLoc = 16842; 612 rType = 0; 613 vrLen = 1610; 614 vrLoc = 15809; 615 }; 616 DE2A6E080BDAD68400EB7A43 /* PBXTextBookmark */ = { 617 isa = PBXTextBookmark; 618 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 619 name = "LTFlashMovie.m: 277"; 620 rLen = 0; 621 rLoc = 8674; 622 rType = 0; 623 vrLen = 1072; 624 vrLoc = 7452; 625 }; 626 DE2A6E090BDAD68400EB7A43 /* PBXTextBookmark */ = { 627 isa = PBXTextBookmark; 628 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 629 name = "LTBufferedRenderer.m: 94"; 630 rLen = 0; 631 rLoc = 3593; 632 rType = 0; 633 vrLen = 1231; 634 vrLoc = 2012; 635 }; 636 DE2A6E0D0BDAD68B00EB7A43 /* PBXTextBookmark */ = { 637 isa = PBXTextBookmark; 638 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 639 name = "LTBufferedRenderer.m: 333"; 640 rLen = 0; 641 rLoc = 11746; 642 rType = 0; 643 vrLen = 949; 644 vrLoc = 10122; 645 }; 646 DE2A6E0E0BDAD68B00EB7A43 /* PBXTextBookmark */ = { 647 isa = PBXTextBookmark; 648 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 649 name = "LTBufferedRenderer.m: 94"; 650 rLen = 0; 651 rLoc = 3593; 652 rType = 0; 653 vrLen = 1231; 654 vrLoc = 2012; 655 }; 656 DE2A6E110BDAD69200EB7A43 /* PBXTextBookmark */ = { 657 isa = PBXTextBookmark; 658 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 659 name = "LTBufferedRenderer.m: 333"; 660 rLen = 0; 661 rLoc = 11746; 662 rType = 0; 663 vrLen = 949; 664 vrLoc = 10122; 665 }; 666 DE2A6E120BDAD69200EB7A43 /* PBXTextBookmark */ = { 667 isa = PBXTextBookmark; 668 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 669 name = "LTBufferedRenderer.m: 94"; 670 rLen = 0; 671 rLoc = 3593; 672 rType = 0; 673 vrLen = 1231; 674 vrLoc = 2012; 675 }; 676 DE2A6E1D0BDAD6DB00EB7A43 /* PBXTextBookmark */ = { 677 isa = PBXTextBookmark; 678 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 679 name = "LTBufferedRenderer.m: 333"; 680 rLen = 0; 681 rLoc = 11746; 682 rType = 0; 683 vrLen = 949; 684 vrLoc = 10122; 685 }; 686 DE2A6E1E0BDAD6DB00EB7A43 /* PBXTextBookmark */ = { 687 isa = PBXTextBookmark; 688 comments = "warning: '_sharedBufferedRenderer' defined but not used"; 689 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 690 rLen = 1; 691 rLoc = 70; 692 rType = 1; 693 }; 694 DE2A6E1F0BDAD6DB00EB7A43 /* PBXTextBookmark */ = { 695 isa = PBXTextBookmark; 696 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 697 name = "LTBufferedRenderer.m: 333"; 698 rLen = 0; 699 rLoc = 11746; 700 rType = 0; 701 vrLen = 949; 702 vrLoc = 10122; 703 }; 704 DE2A6E200BDAD6DB00EB7A43 /* PBXTextBookmark */ = { 705 isa = PBXTextBookmark; 706 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 707 name = "static LTBufferedRenderer * _sharedBufferedRenderer;"; 708 rLen = 59; 709 rLoc = 2494; 710 rType = 0; 711 vrLen = 1265; 712 vrLoc = 950; 713 }; 714 DE2A6E210BDAD6DB00EB7A43 /* PBXTextBookmark */ = { 715 isa = PBXTextBookmark; 716 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 717 name = "LTBufferedRenderer.m: 94"; 718 rLen = 0; 719 rLoc = 3593; 720 rType = 0; 721 vrLen = 1231; 722 vrLoc = 2012; 723 }; 724 DE2A6E250BDAD6E600EB7A43 /* PBXTextBookmark */ = { 725 isa = PBXTextBookmark; 726 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 727 name = "LTBufferedRenderer.h: subdivideLineBetweenPoints:end:color:"; 728 rLen = 0; 729 rLoc = 2397; 730 rType = 0; 731 vrLen = 2215; 732 vrLoc = 0; 733 }; 734 DE2A6E260BDAD6E600EB7A43 /* PBXTextBookmark */ = { 735 isa = PBXTextBookmark; 736 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 737 name = "+ (LTBufferedRenderer *)sharedRenderer"; 738 rLen = 38; 739 rLoc = 925; 740 rType = 0; 741 vrLen = 2325; 742 vrLoc = 539; 743 }; 744 DE2A6E270BDAD6E600EB7A43 /* PBXTextBookmark */ = { 745 isa = PBXTextBookmark; 746 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 747 name = "LTBufferedRenderer.h: renderer"; 748 rLen = 0; 749 rLoc = 1090; 750 rType = 0; 751 vrLen = 2175; 752 vrLoc = 0; 753 }; 754 DE2A6E280BDAD6E600EB7A43 /* PBXTextBookmark */ = { 755 isa = PBXTextBookmark; 756 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 757 name = "+ (LTBufferedRenderer *)sharedRenderer"; 758 rLen = 38; 759 rLoc = 925; 760 rType = 0; 761 vrLen = 2313; 762 vrLoc = 827; 763 }; 764 DE2A6E290BDAD6E600EB7A43 /* PBXTextBookmark */ = { 765 isa = PBXTextBookmark; 766 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 767 name = "LTBufferedRenderer.h: sharedRenderer"; 768 rLen = 0; 769 rLoc = 1090; 770 rType = 0; 771 vrLen = 2181; 772 vrLoc = 0; 773 }; 774 DE2A6E2A0BDAD6E600EB7A43 /* PBXTextBookmark */ = { 775 isa = PBXTextBookmark; 776 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 777 name = "+ (LTBufferedRenderer *)sharedRenderer"; 778 rLen = 38; 779 rLoc = 925; 780 rType = 0; 781 vrLen = 2325; 782 vrLoc = 539; 783 }; 784 DE2A6E2B0BDAD6E600EB7A43 /* PBXTextBookmark */ = { 785 isa = PBXTextBookmark; 786 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 787 name = "LTBufferedRenderer.h: subdivideLineBetweenPoints:end:color:"; 788 rLen = 0; 789 rLoc = 2397; 790 rType = 0; 791 vrLen = 2215; 792 vrLoc = 0; 793 }; 794 DE2A6E2C0BDAD6E600EB7A43 /* PBXTextBookmark */ = { 795 isa = PBXTextBookmark; 796 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 797 name = "LTBufferedRenderer.m: 1"; 798 rLen = 0; 799 rLoc = 0; 800 rType = 0; 801 vrLen = 1755; 802 vrLoc = 20; 803 }; 804 DE2A6E3A0BDAD71500EB7A43 /* PBXTextBookmark */ = { 805 isa = PBXTextBookmark; 806 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 807 name = "LTBufferedRenderer.m: 34"; 808 rLen = 0; 809 rLoc = 889; 810 rType = 0; 811 vrLen = 1792; 812 vrLoc = 20; 813 }; 814 DE2A6E4D0BDAD77600EB7A43 /* PBXTextBookmark */ = { 815 isa = PBXTextBookmark; 816 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 817 name = "LTBufferedRenderer.m: 61"; 818 rLen = 182; 819 rLoc = 1376; 820 rType = 0; 821 vrLen = 1679; 822 vrLoc = 0; 823 }; 824 DE2A6E4E0BDAD77600EB7A43 /* PBXTextBookmark */ = { 825 isa = PBXTextBookmark; 826 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 827 name = "LTBufferedRenderer.h: 9"; 828 rLen = 0; 829 rLoc = 234; 830 rType = 0; 831 vrLen = 2137; 832 vrLoc = 0; 833 }; 834 DE2A6E4F0BDAD77600EB7A43 /* PBXTextBookmark */ = { 835 isa = PBXTextBookmark; 836 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 837 name = "LTBufferedRenderer.m: 62"; 838 rLen = 0; 839 rLoc = 1477; 840 rType = 0; 841 vrLen = 1679; 842 vrLoc = 0; 843 }; 844 DE2A6E500BDAD77600EB7A43 /* PBXTextBookmark */ = { 845 isa = PBXTextBookmark; 846 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 847 name = "LTBufferedRenderer.h: 9"; 848 rLen = 0; 849 rLoc = 234; 850 rType = 0; 851 vrLen = 2137; 852 vrLoc = 0; 853 }; 854 DE2A6E510BDAD77600EB7A43 /* PBXTextBookmark */ = { 855 isa = PBXTextBookmark; 856 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 857 name = "LTBufferedRenderer.m: 61"; 858 rLen = 182; 859 rLoc = 1376; 860 rType = 0; 861 vrLen = 1679; 862 vrLoc = 0; 863 }; 864 DE2A6E520BDAD77600EB7A43 /* PBXTextBookmark */ = { 865 isa = PBXTextBookmark; 866 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 867 name = "LTBufferedRenderer.h: 45"; 868 rLen = 0; 869 rLoc = 1472; 870 rType = 0; 871 vrLen = 2322; 872 vrLoc = 0; 873 }; 874 DE2A6E550BDAD78500EB7A43 /* PBXTextBookmark */ = { 875 isa = PBXTextBookmark; 876 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 877 name = "LTBufferedRenderer.h: _pointsPerUnitLength"; 878 rLen = 0; 879 rLoc = 842; 880 rType = 0; 881 vrLen = 2380; 882 vrLoc = 0; 883 }; 884 DE2A6E580BDAD78D00EB7A43 /* PBXTextBookmark */ = { 885 isa = PBXTextBookmark; 886 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 887 name = "LTBufferedRenderer.h: setPointsPerUnitLength:"; 888 rLen = 0; 889 rLoc = 1472; 890 rType = 0; 891 vrLen = 2492; 892 vrLoc = 0; 893 }; 894 DE2A6E590BDAD78D00EB7A43 /* PBXTextBookmark */ = { 895 isa = PBXTextBookmark; 896 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 897 name = "LTBufferedRenderer.h: setPointsPerUnitLength:"; 898 rLen = 0; 899 rLoc = 1472; 900 rType = 0; 901 vrLen = 2492; 902 vrLoc = 0; 903 }; 904 DE2A6E5A0BDAD78D00EB7A43 /* PBXTextBookmark */ = { 905 isa = PBXTextBookmark; 906 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 907 name = "LTBufferedRenderer.m: 64"; 908 rLen = 0; 909 rLoc = 1881; 910 rType = 0; 911 vrLen = 1628; 912 vrLoc = 0; 913 }; 914 DE2A6E600BDAD7E000EB7A43 /* PBXTextBookmark */ = { 915 isa = PBXTextBookmark; 916 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 917 name = "static LTBufferedRenderer * _sharedBufferedRenderer;"; 918 rLen = 59; 919 rLoc = 2494; 920 rType = 0; 921 vrLen = 1358; 922 vrLoc = 846; 923 }; 924 DE2A6E610BDAD7E000EB7A43 /* PBXTextBookmark */ = { 925 isa = PBXTextBookmark; 926 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 927 name = "LTBufferedRenderer.m: 117"; 928 rLen = 0; 929 rLoc = 3593; 930 rType = 0; 931 vrLen = 1489; 932 vrLoc = 1672; 933 }; 934 DE2A6E670BDAD7EE00EB7A43 /* PBXTextBookmark */ = { 935 isa = PBXTextBookmark; 936 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 937 name = "LTBufferedRenderer.h: _sharedBufferedRenderer"; 938 rLen = 0; 939 rLoc = 2551; 940 rType = 0; 941 vrLen = 1358; 942 vrLoc = 846; 943 }; 944 DE2A6E680BDAD7EE00EB7A43 /* PBXTextBookmark */ = { 945 isa = PBXTextBookmark; 946 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 947 name = "LTBufferedRenderer.m: 117"; 948 rLen = 0; 949 rLoc = 3593; 950 rType = 0; 951 vrLen = 1489; 952 vrLoc = 1672; 953 }; 954 DE2A6E6A0BDAD7FD00EB7A43 /* PBXTextBookmark */ = { 955 isa = PBXTextBookmark; 956 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 957 name = "LTBufferedRenderer.m: 299"; 958 rLen = 0; 959 rLoc = 9948; 960 rType = 0; 961 vrLen = 2208; 962 vrLoc = 10880; 963 }; 964 DE2A6E6B0BDAD7FD00EB7A43 /* PBXTextBookmark */ = { 965 isa = PBXTextBookmark; 966 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 967 name = "LTBufferedRenderer.m: 299"; 968 rLen = 0; 969 rLoc = 9948; 970 rType = 0; 971 vrLen = 2208; 972 vrLoc = 10880; 973 }; 974 DE2A6E6C0BDAD7FD00EB7A43 /* PBXTextBookmark */ = { 975 isa = PBXTextBookmark; 976 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 977 name = "LTBufferedRenderer.h: _sharedBufferedRenderer"; 978 rLen = 0; 979 rLoc = 2551; 980 rType = 0; 981 vrLen = 2422; 982 vrLoc = 137; 983 }; 984 DE2A6E720BDAD81D00EB7A43 /* PBXTextBookmark */ = { 985 isa = PBXTextBookmark; 986 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 987 name = "LTBufferedRenderer.h: _sharedBufferedRenderer"; 988 rLen = 0; 989 rLoc = 2551; 990 rType = 0; 991 vrLen = 2422; 992 vrLoc = 137; 993 }; 994 DE2A6E730BDAD81D00EB7A43 /* PBXTextBookmark */ = { 995 isa = PBXTextBookmark; 996 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 997 name = "LTBufferedRenderer.h: _sharedBufferedRenderer"; 998 rLen = 0; 999 rLoc = 2551; 1000 rType = 0; 1001 vrLen = 2422; 1002 vrLoc = 137; 1003 }; 1004 DE2A6E740BDAD81D00EB7A43 /* PBXTextBookmark */ = { 1005 isa = PBXTextBookmark; 1006 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 1007 name = "LTBufferedRenderer.m: 52"; 1008 rLen = 0; 1009 rLoc = 1314; 1010 rType = 0; 1011 vrLen = 1598; 1012 vrLoc = 246; 1013 }; 1014 DE2A6E7B0BDAD86300EB7A43 /* PBXBookmark */ = { 1015 isa = PBXBookmark; 1016 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 1017 }; 1018 DE2A6E810BDAD8DF00EB7A43 /* PBXTextBookmark */ = { 1019 isa = PBXTextBookmark; 1020 fRef = DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */; 1021 name = "LTFlashMovie.m: 172"; 1022 rLen = 0; 1023 rLoc = 5175; 1024 rType = 0; 1025 vrLen = 2588; 1026 vrLoc = 3298; 1027 }; 1028 DE2A6E860BDAD91600EB7A43 /* PBXBookmark */ = { 1029 isa = PBXBookmark; 1030 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 1031 }; 1032 DE2A6E8C0BDAD93800EB7A43 /* PBXTextBookmark */ = { 1033 isa = PBXTextBookmark; 1034 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 1035 name = "LTBufferedRenderer.m: 369"; 1036 rLen = 0; 1037 rLoc = 12152; 1038 rType = 0; 1039 vrLen = 2379; 1040 vrLoc = 10866; 1041 }; 1042 DE2A6E910BDAD94300EB7A43 /* PBXTextBookmark */ = { 1043 isa = PBXTextBookmark; 1044 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 1045 name = "LTBufferedRenderer.m: 369"; 1046 rLen = 0; 1047 rLoc = 12152; 1048 rType = 0; 1049 vrLen = 2379; 1050 vrLoc = 10866; 1051 }; 1052 DE2A6EB30BDADA8700EB7A43 /* PBXTextBookmark */ = { 1053 isa = PBXTextBookmark; 1054 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 1055 name = "LTBufferedRenderer.h: _sharedBufferedRenderer"; 1056 rLen = 0; 1057 rLoc = 2551; 1058 rType = 0; 1059 vrLen = 2422; 1060 vrLoc = 137; 1061 }; 1062 DE2A6EB40BDADA8700EB7A43 /* PBXTextBookmark */ = { 1063 isa = PBXTextBookmark; 1064 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 1065 rLen = 0; 1066 rLoc = 2147483605; 1067 rType = 0; 1068 }; 1069 DE2A6EB50BDADA8700EB7A43 /* PBXTextBookmark */ = { 1070 isa = PBXTextBookmark; 1071 fRef = DEEECF760B940A010051C017 /* LTBufferedRenderer.h */; 1072 name = "LTBufferedRenderer.h: _sharedBufferedRenderer"; 1073 rLen = 0; 1074 rLoc = 2551; 1075 rType = 0; 1076 vrLen = 2422; 1077 vrLoc = 137; 1078 }; 1079 DE2A6EB60BDADA8700EB7A43 /* PBXTextBookmark */ = { 1080 isa = PBXTextBookmark; 1081 fRef = DEEECF770B940A010051C017 /* LTBufferedRenderer.m */; 1082 name = "LTBufferedRenderer.m: 308"; 1083 rLen = 0; 1084 rLoc = 10266; 1085 rType = 0; 1086 vrLen = 2553; 1087 vrLoc = 8786; 1088 }; 115 1089 DE2FE0660B8ABF2D0012DDC5 /* LTDefineShapeTag.h */ = { 116 1090 uiCtxt = { … … 272 1246 DE8DEBDA0B6306E500C8C2DA /* LTShapeWithStyle.h */ = { 273 1247 uiCtxt = { 274 sepNavIntBoundsRect = "{{0, 0}, {1022, 9 24}}";1248 sepNavIntBoundsRect = "{{0, 0}, {1022, 951}}"; 275 1249 sepNavSelRange = "{476, 0}"; 276 sepNavVisRect = "{{0, 0}, {941, 639}}";1250 sepNavVisRect = "{{0, 0}, {941, 951}}"; 277 1251 sepNavWindowFrame = "{{464, 190}, {986, 768}}"; 278 1252 }; … … 280 1254 DE8DEBDB0B6306E500C8C2DA /* LTShapeWithStyle.m */ = { 281 1255 uiCtxt = { 282 sepNavIntBoundsRect = "{{0, 0}, {1 022, 7532}}";283 sepNavSelRange = "{ 3382, 0}";284 sepNavVisRect = "{{0, 862}, {941, 1045}}";285 sepNavWindowFrame = "{{1 86, 4}, {986, 1174}}";1256 sepNavIntBoundsRect = "{{0, 0}, {1633, 7770}}"; 1257 sepNavSelRange = "{16842, 0}"; 1258 sepNavVisRect = "{{0, 5986}, {1633, 475}}"; 1259 sepNavWindowFrame = "{{138, 4}, {986, 1024}}"; 286 1260 }; 287 1261 }; … … 436 1410 DEC60E630B62D9610000F3A0 /* LTFlashMovie.h */ = { 437 1411 uiCtxt = { 438 sepNavIntBoundsRect = "{{0, 0}, {1088, 938}}";439 sepNavSelRange = "{ 273, 0}";440 sepNavVisRect = "{{0, 29}, {1088, 888}}";1412 sepNavIntBoundsRect = "{{0, 0}, {1088, 1106}}"; 1413 sepNavSelRange = "{1627, 0}"; 1414 sepNavVisRect = "{{0, 0}, {1088, 944}}"; 441 1415 sepNavWindowFrame = "{{206, 55}, {1133, 1017}}"; 442 1416 }; … … 444 1418 DEC60E640B62D9610000F3A0 /* LTFlashMovie.m */ = { 445 1419 uiCtxt = { 446 sepNavIntBoundsRect = "{{0, 0}, {1088, 4074}}";447 sepNavSelRange = "{ 5870, 52}";448 sepNavVisRect = "{{0, 2390}, {1088, 888}}";449 sepNavWindowFrame = "{{206, 55}, {1133, 1017}}";1420 sepNavIntBoundsRect = "{{0, 0}, {1088, 5390}}"; 1421 sepNavSelRange = "{1668, 0}"; 1422 sepNavVisRect = "{{0, 140}, {1088, 944}}"; 1423 sepNavWindowFrame = "{{206, 11}, {1133, 1017}}"; 450 1424 }; 451 1425 }; … … 565 1539 DECBE4490B8D6A5400A95F35 /* LTFrame.h */ = { 566 1540 uiCtxt = { 567 sepNavIntBoundsRect = "{{0, 0}, {1153, 895}}";568 sepNavSelRange = "{1 781, 0}";569 sepNavVisRect = "{{0, 0}, {1153, 895}}";1541 sepNavIntBoundsRect = "{{0, 0}, {1153, 951}}"; 1542 sepNavSelRange = "{1428, 53}"; 1543 sepNavVisRect = "{{0, 0}, {1153, 951}}"; 570 1544 sepNavWindowFrame = "{{15, 4}, {1198, 1024}}"; 571 1545 }; … … 573 1547 DECBE44A0B8D6A5400A95F35 /* LTFrame.m */ = { 574 1548 uiCtxt = { 575 sepNavIntBoundsRect = "{{0, 0}, {1153, 2 100}}";576 sepNavSelRange = "{37 27, 0}";577 sepNavVisRect = "{{0, 414}, {1153, 895}}";1549 sepNavIntBoundsRect = "{{0, 0}, {1153, 2268}}"; 1550 sepNavSelRange = "{3740, 0}"; 1551 sepNavVisRect = "{{0, 0}, {1153, 951}}"; 578 1552 sepNavWindowFrame = "{{15, 4}, {1198, 1024}}"; 579 1553 }; … … 722 1696 DEEECF760B940A010051C017 /* LTBufferedRenderer.h */ = { 723 1697 uiCtxt = { 724 sepNavIntBoundsRect = "{{0, 0}, {1088, 888}}";725 sepNavSelRange = "{ 515, 27}";726 sepNavVisRect = "{{0, 0}, {1088, 888}}";727 sepNavWindowFrame = "{{107, 72}, {1133, 1017}}";1698 sepNavIntBoundsRect = "{{0, 0}, {1088, 1036}}"; 1699 sepNavSelRange = "{2551, 0}"; 1700 sepNavVisRect = "{{0, 92}, {1088, 944}}"; 1701 sepNavWindowFrame = "{{107, 11}, {1133, 1017}}"; 728 1702 }; 729 1703 }; 730 1704 DEEECF770B940A010051C017 /* LTBufferedRenderer.m */ = { 731 1705 uiCtxt = { 732 sepNavIntBoundsRect = "{{0, 0}, {1088, 4186}}";733 sepNavSelRange = "{ 7537, 0}";734 sepNavVisRect = "{{0, 2351}, {1088, 888}}";735 sepNavWindowFrame = "{{107, 72}, {1133, 1017}}";1706 sepNavIntBoundsRect = "{{0, 0}, {1088, 5642}}"; 1707 sepNavSelRange = "{10279, 0}"; 1708 sepNavVisRect = "{{0, 3908}, {1088, 944}}"; 1709 sepNavWindowFrame = "{{107, 11}, {1133, 1017}}"; 736 1710 }; 737 1711 }; trunk/LaserTools/_Runtime/LTBufferedRenderer.h
r387 r399 7 7 // 8 8 // This takes care of all rendering done at runtime for the Flash 9 // movie and its associates. There is really no need to instantiate 10 // it ever, or at least not right now. 9 // movie and its associates. 11 10 12 11 #import <Cocoa/Cocoa.h> … … 21 20 #import "LTMatrix.h" 22 21 23 #define LTCurveLinearizationQuality 6.0F 24 #define LTPointsPerUnitLength 50.0F 22 //#define LTCurveLinearizationQuality 6.0F 23 //#define LTPointsPerUnitLength 50.0F 24 static float const LTCurveLinearizationQuality = 6.0F; 25 static float const LTPointsPerUnitLength = 50.0F; 25 26 26 27 NSPoint LTDivideLineSegment(float t, NSPoint a, NSPoint b); … … 28 29 @interface LTBufferedRenderer : NSObject 29 30 { 31 float _curveLinearizationQuality; 32 float _pointsPerUnitLength; 30 33 } 31 34 … … 33 36 // Core 34 37 // -------------------------------------------------------------------------- // 38 + (LTBufferedRenderer *)sharedRenderer; 35 39 + (LTBufferedRenderer *)renderer; 36 40 … … 39 43 40 44 // -------------------------------------------------------------------------- // 45 // Class Properties 46 // -------------------------------------------------------------------------- // 47 - (float)curveLinearizationQuality; 48 - (void)setCurveLinearizationQuality:(float)newValue; 49 - (float)pointsPerUnitLength; 50 - (void)setPointsPerUnitLength:(float)newValue; 51 52 // -------------------------------------------------------------------------- // 41 53 // Rendering movie frames 42 54 // -------------------------------------------------------------------------- // 43 +(NSArray *)renderFrame:(uint16_t)frame inMovie:(LTFlashMovie *)movie;44 +(NSArray *)renderFrameInstance:(LTFrameInstance *)instance inMovie:(LTFlashMovie *)movie;45 +(NSArray *)renderObjectInstance:(LTObjectInstance *)instance55 - (NSArray *)renderFrame:(uint16_t)frame inMovie:(LTFlashMovie *)movie; 56 - (NSArray *)renderFrameInstance:(LTFrameInstance *)instance inMovie:(LTFlashMovie *)movie; 57 - (NSArray *)renderObjectInstance:(LTObjectInstance *)instance 46 58 withContext:(LTRenderedContext)context 47 59 inFrameInstance:(LTFrameInstance *)frameInstance … … 51 63 // Curve and point manipulation 52 64 // -------------------------------------------------------------------------- // 53 +(NSArray *)linearizeCurve:(LTCurvedEdgeRecord *)curve fromAnchor:(NSPoint)anchor;54 +(NSArray *)linearizeCurve:(LTCurvedEdgeRecord *)curve fromAnchor:(NSPoint)anchor quality:(float)quality;65 - (NSArray *)linearizeCurve:(LTCurvedEdgeRecord *)curve fromAnchor:(NSPoint)anchor; 66 - (NSArray *)linearizeCurve:(LTCurvedEdgeRecord *)curve fromAnchor:(NSPoint)anchor quality:(float)quality; 55 67 56 + (NSArray *)subdivideLineBetweenPoints:(NSPoint)start end:(NSPoint)end color:(LTColor *)color; 68 - (NSArray *)subdivideLineBetweenPoints:(NSPoint)start end:(NSPoint)end color:(LTColor *)color; 69 70 71 static LTBufferedRenderer * _sharedBufferedRenderer = nil; 57 72 58 73 @end trunk/LaserTools/_Runtime/LTBufferedRenderer.m
r394 r399 25 25 // Core 26 26 // -------------------------------------------------------------------------- // 27 /* 28 * In the initialization, we want to create a shared instance of the buffered 29 * renderer that we can modify when we want to change quality settings and the 30 * like, for example. 31 */ 32 + (void)initialize 33 { 34 _sharedBufferedRenderer = [[LTBufferedRenderer alloc] init]; //[LTBufferedRenderer renderer]; 35 } 36 37 + (LTBufferedRenderer *)sharedRenderer 38 { 39 return _sharedBufferedRenderer; 40 } 41 27 42 + (LTBufferedRenderer *)renderer 28 43 { … … 34 49 if (self = [super init]) // as long as super class initialization goes to plan 35 50 { 51 [self setCurveLinearizationQuality:LTCurveLinearizationQuality]; 52 [self setPointsPerUnitLength:LTPointsPerUnitLength]; 36 53 } 37 54 … … 42 59 { 43 60 [super dealloc]; 61 } 62 63 // -------------------------------------------------------------------------- // 64 // Class Properties 65 // -------------------------------------------------------------------------- // 66 - (float)curveLinearizationQuality 67 { 68 return _curveLinearizationQuality; 69 } 70 71 - (void)setCurveLinearizationQuality:(float)newValue 72 { 73 _curveLinearizationQuality = newValue; 74 } 75 76 - (float)pointsPerUnitLength 77 { 78 return _pointsPerUnitLength; 79 } 80 81 - (void)setPointsPerUnitLength:(float)newValue 82 { 83 _pointsPerUnitLength = newValue; 44 84 } 45 85 … … 51 91 // the given object. This points are then spliced together with 0-intensity 52 92 // LTPoints, and put in an array for return 53 +(NSArray *)renderFrame:(uint16_t)frame inMovie:(LTFlashMovie *)movie93 - (NSArray *)renderFrame:(uint16_t)frame inMovie:(LTFlashMovie *)movie 54 94 { 55 95 NSMutableArray *points = [NSMutableArray array]; … … 77 117 // given frame instance. Then, we make the last point in the current 78 118 // array of points (if defined) have a zero intensity color. 79 NSArray *objectPoints = [ LTBufferedRenderer119 NSArray *objectPoints = [[LTBufferedRenderer sharedRenderer] 80 120 renderFrameInstance:instance 81 121 inMovie:movie]; … … 104 144 // instances present in the given frame instance. 105 145 // The points are ranged from -1 to 1. 106 +(NSArray *)renderFrameInstance:(LTFrameInstance *)instance inMovie:(LTFlashMovie *)movie146 - (NSArray *)renderFrameInstance:(LTFrameInstance *)instance inMovie:(LTFlashMovie *)movie 107 147 { 108 148 if ([instance characterID]) … … 124 164 for (i = 0; i < numInstances; i++) 125 165 { 126 NSArray *points = [ LTBufferedRenderer166 NSArray *points = [[LTBufferedRenderer sharedRenderer] 127 167 renderObjectInstance:[instances objectAtIndex:i] 128 168 withContext:rawContext … … 142 182 // This will take an object instance and a rendered context, and apply the matrices 143 183 // in the object instance to the rendered context's array of points. 144 +(NSArray *)renderObjectInstance:(LTObjectInstance *)instance184 - (NSArray *)renderObjectInstance:(LTObjectInstance *)instance 145 185 withContext:(LTRenderedContext)context 146 186 inFrameInstance:(LTFrameInstance *)frameInstance … … 241 281 // This function takes the given anchor and curve, and then linearizes it using 242 282 // deCastelijau's algorithm and the default QUALITY setting. 243 +(NSArray *)linearizeCurve:(LTCurvedEdgeRecord *)curve fromAnchor:(NSPoint)anchor244 { 245 return [ LTBufferedRenderer linearizeCurve:curve fromAnchor:anchor quality:LTCurveLinearizationQuality];283 - (NSArray *)linearizeCurve:(LTCurvedEdgeRecord *)curve fromAnchor:(NSPoint)anchor 284 { 285 return [[LTBufferedRenderer sharedRenderer] linearizeCurve:curve fromAnchor:anchor quality:[self curveLinearizationQuality]]; 246 286 } 247 287 … … 264 304 * defined as B(t) by deCastelijau. 265 305 */ 266 +(NSArray *)linearizeCurve:(LTCurvedEdgeRecord *)curve fromAnchor:(NSPoint)anchor quality:(float)quality267 { 306 - (NSArray *)linearizeCurve:(LTCurvedEdgeRecord *)curve fromAnchor:(NSPoint)anchor quality:(float)quality 307 { 268 308 // check quality range 269 309 if (quality < 1) … … 308 348 * into an autoreleased array and returns it. 309 349 */ 310 +(NSArray *)subdivideLineBetweenPoints:(NSPoint)start end:(NSPoint)end350 - (NSArray *)subdivideLineBetweenPoints:(NSPoint)start end:(NSPoint)end 311 351 color:(LTColor *)color 312 352 { … … 315 355 float deltaY = end.y - start.y; 316 356 float lineDistance = sqrt(pow(deltaX, 2) + pow(deltaY, 2)); 317 float signX = (signbit(deltaX) == 0) ? 1.0 : -1.0;318 float signY = (signbit(deltaY) == 0) ? 1.0 : -1.0;357 //float signX = (signbit(deltaX) == 0) ? 1.0 : -1.0; 358 //float signY = (signbit(deltaY) == 0) ? 1.0 : -1.0; 319 359 320 360 // Get the number of points by dividing the line distance by the points per … … 327 367 // instead of: 328 368 // . . . . . . . . (which is off!) 329 float numberOfPoints = floor(lineDistance/ LTPointsPerUnitLength);369 float numberOfPoints = floor(lineDistance/[self pointsPerUnitLength]); 330 370 float deltaXPerPoint = deltaX / numberOfPoints; 331 371 float deltaYPerPoint = deltaY / numberOfPoints;
