DrawKit
Vector and illustration framework for Mac OS X
Instance Methods | Class Methods | List of all members
DKArrowStroke Class Reference

DKArrowStroke is a rasterizer that implements arrowheads on the ends of paths. More...

Inheritance diagram for DKArrowStroke:
Inheritance graph
[legend]

Instance Methods

(DKArrowHeadKind) - arrowHeadAtEnd
 
(DKArrowHeadKind) - arrowHeadAtStart
 
(CGFloat- arrowHeadLength
 
(CGFloat- arrowHeadWidth
 
(NSBezierPath *) - arrowPathFromOriginalPath:fromObject:
 
(NSImage *) - arrowSwatchImageWithSize:strokeWidth:
 
(DKDimensioningLineOptions) - dimensioningLineOptions
 
(NSAttributedString *) - dimensionTextForObject:
 
(DKDimensionTextKind) - dimensionTextKind
 
(DKDimensionToleranceOption) - dimensionToleranceOption
 
(NSFont *) - font
 
(NSNumberFormatter *) - formatter
 
(NSColor *) - outlineColour
 
(CGFloat- outlineWidth
 
(void) - setArrowHeadAtEnd:
 
(void) - setArrowHeadAtStart:
 
(void) - setArrowHeadLength:
 
(void) - setArrowHeadWidth:
 
(void) - setDimensioningLineOptions:
 
(void) - setDimensionTextKind:
 
(void) - setDimensionToleranceOption:
 
(void) - setFont:
 
(void) - setFormat:
 
(void) - setFormatter:
 
(void) - setOutlineColour:
 
(void) - setOutlineWidth:
 
(void) - setTextAttributes:
 
(void) - standardArrowForStrokeWidth:
 
(NSImage *) - standardArrowSwatchImage
 
(NSDictionary *) - textAttributes
 
(NSString *) - toleranceTextForObject:
 
(CGFloat- widthOfDimensionTextForObject:
 
- Instance Methods inherited from DKStroke
(CGFloat- allowance
 
(void) - applyAttributesToPath:
 
(NSColor *) - colour
 
(DKStrokeDash *) - dash
 
(NSSize) - extraSpaceNeededIgnoringMitreLimit
 
(id- initWithWidth:colour:
 
(CGFloat- lateralOffset
 
(NSLineCapStyle) - lineCapStyle
 
(NSLineJoinStyle) - lineJoinStyle
 
(CGFloat- miterLimit
 
(void) - scaleWidthBy:
 
(void) - setAutoDash
 
(void) - setColour:
 
(void) - setDash:
 
(void) - setLateralOffset:
 
(void) - setLineCapStyle:
 
(void) - setLineJoinStyle:
 
(void) - setMiterLimit:
 
(void) - setShadow:
 
(void) - setTrimLength:
 
(void) - setWidth:
 
(NSShadow *) - shadow
 
(void) - strokeRect:
 
(CGFloat- trimLength
 
(CGFloat- width
 
- Instance Methods inherited from DKRasterizer
(DKClippingOption) - clipping
 Whether the rasterizer's effect is clipped to the path or not, and if so, which side. More...
 
(DKRastGroup *) - container
 Returns the immediate container of this object, if owned by a group. More...
 
(BOOL- copyToPasteboard:
 
(BOOL- enabled
 
(BOOL- isValid
 
(NSString *) - label
 
(NSString *) - name
 
(NSBezierPath *) - renderingPathForObject:
 Returns the path to render given the object doing the rendering. More...
 
(void) - setClipping:
 
(void) - setClippingWithoutNotifying:
 
(void) - setContainer:
 Sets the immediate container of this object. More...
 
(void) - setEnabled:
 
(void) - setName:
 
(NSString *) - styleScript
 
- Instance Methods inherited from GCObservableObject
(NSString *) - actionNameForKeyPath:
 
(NSString *) - actionNameForKeyPath:changeKind:
 
(NSArray *) - oldArrayValueForKeyPath:
 
(void) - registerActionNames
 
(void) - sendInitialValuesForAllPropertiesToObserver:context:
 
(void) - setActionName:forKeyPath:
 
(BOOL- setUpKVOForObserver:
 
(void) - setUpObservables:forObserver:
 
(BOOL- tearDownKVOForObserver:
 
(void) - tearDownObservables:forObserver:
 
- Instance Methods inherited from NSObject
(NSString *) - address
 
(DKStyleRegistry *) - applicationWillReturnStyleRegistry
 
(BOOL- canBeUsedWithSelectionTool
 
(id- categoryManager:shouldReplaceObject:withObject:
 
(Class- classForCoder
 
(NSColor *) - colorValue
 
(NSColor *) - colourValue
 
(id- copy
 
(void) - dealloc
 
(id- deepCopy
 
(NSDictionary *) - dimensionValuesForArrowStroke:
 
(CGFloat- drawing:convertDistanceToExternalCoordinates:
 
(NSPoint) - drawing:convertLocationToExternalCoordinates:
 
(void) - drawing:didDrawRect:inView:
 
(void) - drawing:willDrawRect:inView:
 
(NSString *) - drawing:willReturnAbbreviationForUnit:
 
(NSString *) - drawing:willReturnFormattedCoordinateForDistance:
 
(CGFloat- drawingWillReturnUnitToPointsConversonFactor:
 
(void) - finalize
 
(NSString *) - hexString
 
(void) - hotspot:didEndTrackingWithEvent:inView:
 
(void) - hotspot:isTrackingWithEvent:inView:
 
(void) - hotspot:willBeginTrackingWithEvent:inView:
 
(NSData *) - imageData
 
(NSImage *) - imageResourceNamed:
 
(id- init
 
(id- initWithExpression:
 
(id- instantiateObjectWithShortName:parameters:
 
(BOOL- isLiteralValue
 
(void) - layoutManager:willPlaceGlyphAtIndex:atLocation:pathAngle:yOffset:
 
(void) - menuItem:wasAddedForObject:inCategory:
 
(BOOL- moveObjectTo:position:slope:userInfo:
 
(id- mutableCopy
 
(void) - oneShotComplete
 
(void) - oneShotHasReached:
 
(void) - oneShotWillBegin
 
(void) - path:elementIndex:type:points:subPathIndex:subPathClosed:contextInfo:
 
(id- placeLinkFromPoint:toPoint:onPath:linkNumber:userInfo:
 
(id- placeObjectAtPoint:onPath:position:slope:userInfo:
 
(NSPoint) - point
 
(NSPoint) - pointForTextLayout
 
(DKStyle *) - registry:shouldReplaceStyle:withStyle:
 
(NSBezierPath *) - renderer:willRenderPath:
 
(void) - routeFinder:progressHasReached:
 
(void) - setValue:forNumericParameter:
 
(NSString *) - stringValue
 
(CGFloat- taperFactorAtDistance:onPath:ofLength:
 
(void) - toolDidPerformUndoableAction:
 
(void) - toolWillPerformUndoableAction:
 
(NSURL *) - url
 
- Instance Methods inherited from <NSObject>
(NSString *) - description
 
(NSUInteger- hash
 
(BOOL- isEqual:
 
- Instance Methods inherited from <NSKeyValueBindingCreation>
(void) - bind:toObject:withKeyPath:options:
 
(NSArray *) - exposedBindings
 
(NSDictionary *) - infoForBinding:
 
(NSArray *) - optionDescriptionsForBinding:
 
(void) - unbind:
 
(Class- valueClassForBinding:
 
- Instance Methods inherited from <DKRasterizer>
(NSSize) - extraSpaceNeeded
 
(BOOL- isFill
 
(void) - render:
 
(void) - renderPath:
 
- Instance Methods inherited from <NSCoding>
(void) - encodeWithCoder:
 
(id- initWithCoder:
 
- Instance Methods inherited from <NSCopying>
(id- copyWithZone:
 

Class Methods

(NSNumberFormatter *) + defaultDimensionLineFormatter
 
(NSDictionary *) + dimensioningLineTextAttributes
 
(void) + setDimensioningLineTextAttributes:
 
(DKArrowStroke *) + standardDimensioningLine
 
- Class Methods inherited from DKStroke
(DKStroke *) + defaultStroke
 
(DKStroke *) + strokeWithWidth:colour:
 
- Class Methods inherited from DKRasterizer
(DKRasterizer *) + rasterizerFromPasteboard:
 
- Class Methods inherited from GCObservableObject
(NSString *) + actionNameForKeyPath:objClass:
 
(NSArray *) + observableKeyPaths
 
(void) + registerActionName:forKeyPath:objClass:
 
- Class Methods inherited from NSObject
(id+ alloc
 
(Class+ class
 
(void) + initialize
 
(void) + load
 
(id+ new
 
- Class Methods inherited from <NSKeyValueBindingCreation>
(void) + exposeBinding:
 

Additional Inherited Members

- Protected Attributes inherited from DKStroke
CGFloat m_width
 

Detailed Description

DKArrowStroke is a rasterizer that implements arrowheads on the ends of paths.

DKArrowStroke is a rasterizer that implements arrowheads on the ends of paths. The heads are drawn by filling the arrowhead using the same colour as the stroke, thus seamlessly blending the head into the path. Where multiple strokes are used, the resulting effect should be correct when angles are kept the same and lengths are calculated from the stroke width.

Method Documentation

- (DKArrowHeadKind) arrowHeadAtEnd
- (DKArrowHeadKind) arrowHeadAtStart
- (CGFloat) arrowHeadLength
- (CGFloat) arrowHeadWidth
- (NSBezierPath*) arrowPathFromOriginalPath: (NSBezierPath *)  inPath
fromObject: (id obj 
- (NSImage*) arrowSwatchImageWithSize: (NSSize)  size
strokeWidth: (CGFloat width 
+ (NSNumberFormatter*) defaultDimensionLineFormatter
- (DKDimensioningLineOptions) dimensioningLineOptions
+ (NSDictionary*) dimensioningLineTextAttributes
- (NSAttributedString*) dimensionTextForObject: (id obj
- (DKDimensionTextKind) dimensionTextKind
- (DKDimensionToleranceOption) dimensionToleranceOption
- (NSFont*) font
- (NSNumberFormatter*) formatter
- (NSColor*) outlineColour
- (CGFloat) outlineWidth
- (void) setArrowHeadAtEnd: (DKArrowHeadKind)  kind
- (void) setArrowHeadAtStart: (DKArrowHeadKind)  kind
- (void) setArrowHeadLength: (CGFloat length
- (void) setArrowHeadWidth: (CGFloat width
- (void) setDimensioningLineOptions: (DKDimensioningLineOptions)  dimOps
+ (void) setDimensioningLineTextAttributes: (NSDictionary *)  attrs
- (void) setDimensionTextKind: (DKDimensionTextKind)  kind
- (void) setDimensionToleranceOption: (DKDimensionToleranceOption)  option
- (void) setFont: (NSFont *)  font
- (void) setFormat: (NSString *)  format
- (void) setFormatter: (NSNumberFormatter *)  fmt
- (void) setOutlineColour: (NSColor *)  colour
- (void) setOutlineWidth: (CGFloat width
- (void) setTextAttributes: (NSDictionary *)  dict
- (void) standardArrowForStrokeWidth: (CGFloat sw
- (NSImage*) standardArrowSwatchImage
+ (DKArrowStroke*) standardDimensioningLine
- (NSDictionary*) textAttributes
- (NSString*) toleranceTextForObject: (id object
- (CGFloat) widthOfDimensionTextForObject: (id obj