CCNode Class Reference

#import <CCNode.h>

Inherited by CCAtlasNode, CCLayer, CCMenuItem, CCMotionStreak, CCParallaxNode, CCParticleSystem, CCRenderTexture, CCRibbon, CCScene, CCSprite, CCSpriteSheet, CCTextureNode, and CCTMXTiledMap.

List of all members.

Public Member Functions

(id) - init
(void) - onEnter
(void) - onEnterTransitionDidFinish
(void) - onExit
(id) - addChild:
(id) - addChild:z:
(id) - addChild:z:tag:
(void) - removeChild:cleanup:
(void) - removeChildByTag:cleanup:
(void) - removeAllChildrenWithCleanup:
(CCNode *) - getChildByTag:
(NSArray *) - children
(void) - reorderChild:z:
(void) - cleanup
(void) - draw
(void) - visit
(void) - transform
(void) - transformAncestors
(CGRect) - boundingBox
(CCAction *) - runAction:
(void) - stopAllActions
(void) - stopAction:
(void) - stopActionByTag:
(CCAction *) - getActionByTag:
(int) - numberOfRunningActions
(void) - schedule:
(void) - schedule:interval:
(void) - unschedule:
(void) - activateTimers
(void) - deactivateTimers
(CGAffineTransform) - nodeToParentTransform
(CGAffineTransform) - parentToNodeTransform
(CGAffineTransform) - nodeToWorldTransform
(CGAffineTransform) - worldToNodeTransform
(CGPoint) - convertToNodeSpace:
(CGPoint) - convertToWorldSpace:
(CGPoint) - convertToNodeSpaceAR:
(CGPoint) - convertToWorldSpaceAR:
(CGPoint) - convertTouchToNodeSpace:
(CGPoint) - convertTouchToNodeSpaceAR:

Static Public Member Functions

(id) + node

Properties

int zOrder
float vertexZ
float rotation
float scale
float scaleX
float scaleY
CGPoint position
CCCameracamera
CCGridBasegrid
BOOL visible
CGPoint transformAnchor
CGPoint anchorPoint
CGSize contentSize
CCNodeparent
BOOL relativeAnchorPoint
int tag
void * userData

Detailed Description

CCNode is the main element. Anything thats gets drawn or contains things that get drawn is a CCNode. The most popular CCNodes are: CCScene, CCLayer, CCSprite, CCMenu.

The main features of a CCNode are:

Some CCNode nodes provide extra functionality for them or their children.

Subclassing a CCNode usually means (one/all) of:

Features of CCNode:

Limitations:

Definition at line 59 of file CCNode.h.


Member Function Documentation

- (void) activateTimers  

activate all scheduled timers. Called internally by onEnter

- (id) addChild: (CCNode *)  node  

Adds a child to the container with z-order as 0. It returns self, so you can chain several addChilds.

Since:
v0.7.1
- (id) addChild: (CCNode *)  node
z: (int)  z 

Adds a child to the container with a z-order It returns self, so you can chain several addChilds.

Since:
v0.7.1
- (id) addChild: (CCNode *)  node
z: (int)  z
tag: (int)  tag 

Adds a child to the container with z order and tag It returns self, so you can chain several addChilds.

Since:
v0.7.1
- (CGRect) boundingBox  

returns an axis aligned bounding box of the node. It takes into account any kind of transformation.

Since:
v0.8.2
- (NSArray *) children  

Returns the array that contains all the children

- (void) cleanup  

Stops all running actions and schedulers

Since:
v0.8
- (CGPoint) convertToNodeSpace: (CGPoint)  worldPoint  

converts a world coordinate to local coordinate

Since:
v0.7.1
- (CGPoint) convertToNodeSpaceAR: (CGPoint)  worldPoint  

converts a world coordinate to local coordinate treating the returned/received node point as anchor relative

Since:
v0.7.1
- (CGPoint) convertTouchToNodeSpace: (UITouch *)  touch  

convenience methods which take a UITouch instead of CGPoint

Todo:
convertTouchToNodeSpace needs documentation
Since:
v0.7.1
- (CGPoint) convertTouchToNodeSpaceAR: (UITouch *)  touch  
Todo:
convertTouchToNodeSpaceAR needs documentation
Since:
v0.7.1
- (CGPoint) convertToWorldSpace: (CGPoint)  nodePoint  

converts local coordinate to world space

Since:
v0.7.1
- (CGPoint) convertToWorldSpaceAR: (CGPoint)  nodePoint  

converts local coordinate to world space treating the returned/received node point as anchor relative

Since:
v0.7.1
- (void) deactivateTimers  

deactivate all scheduled timers. Called internally by onExit

- (void) draw  

override this method to draw your own node.

- (CCAction*) getActionByTag: (int)  tag  

Gets an action from the running action list given its tag

Since:
v0.7.1
Returns:
the Action the with the given tag
- (CCNode*) getChildByTag: (int)  tag  

Gets a child from the container given its tag

Returns:
returns a CCNode object
Since:
v0.7.1
- (id) init  

initializes the node

+ (id) node  

allocates and initializes a node. The node will be created as "autorelease".

- (CGAffineTransform) nodeToParentTransform  

actual affine transforms used

Todo:
nodeToParentTransform needs documentation
Since:
v0.7.1
- (CGAffineTransform) nodeToWorldTransform  
Todo:
nodeToWorldTransform needs documentation
Since:
v0.7.1
- (int) numberOfRunningActions  

Returns the numbers of actions that are running plus the ones that are schedule to run (actions in actionsToAdd and actions arrays). Composable actions are counted as 1 action. Example: If you are running 1 Sequence of 7 actions, it will return 1. If you are running 7 Sequences of 2 actions, it will return 7.

- (void) onEnter  

callback that is called every time the CCNode enters the 'stage'. If the CCNode enters the 'stage' with a transition, this callback is called when the transition starts. During onEnter you can't a "sister/brother" node.

- (void) onEnterTransitionDidFinish  

callback that is called when the CCNode enters in the 'stage'. If the CCNode enters the 'stage' with a transition, this callback is called when the transition finishes.

Since:
v0.8
- (void) onExit  

callback that is called every time the CCNode leaves the 'stage'. If the CCNode leaves the 'stage' with a transition, this callback is called when the transition finishes. During onExit you can't a "sister/brother" node.

- (CGAffineTransform) parentToNodeTransform  
Todo:
parentToNodeTransform needs documentation
Since:
v0.7.1
- (void) removeAllChildrenWithCleanup: (BOOL)  cleanup  

Removes all children from the container and do a cleanup all running actions depending on the cleanup parameter.

Since:
v0.7.1
- (void) removeChild: (CCNode *)  node
cleanup: (BOOL)  cleanup 

Removes a child from the container. It will also cleanup all running actions depending on the cleanup parameter.

Since:
v0.7.1
- (void) removeChildByTag: (int)  tag
cleanup: (BOOL)  cleanup 

Removes a child from the container by tag value. It will also cleanup all running actions depending on the cleanup parameter

Since:
v0.7.1
- (void) reorderChild: (CCNode *)  child
z: (int)  zOrder 

Reorders a child according to a new z value. The child MUST be already added.

- (CCAction*) runAction: (CCAction *)  action  

Executes an action, and returns the action that is executed. The node becomes the action's target.

Warning:
Starting from v0.8 actions don't retain their target anymore.
Since:
v0.7.1
Returns:
An Action pointer
- (void) schedule: (SEL)  s  

check whether a selector is scheduled. schedules a selector. The scheduled selector will be ticked every frame

- (void) schedule: (SEL)  s
interval: (ccTime seconds 

schedules a selector with an interval time in seconds. If time is 0 it will be ticked every frame.

- (void) stopAction: (CCAction *)  action  

Removes an action from the running action list

- (void) stopActionByTag: (int)  tag  

Removes an action from the running action list given its tag

Since:
v0.7.1
- (void) stopAllActions  

Removes all actions from the running action list

- (void) transform  

performs OpenGL view-matrix transformation based on position, scale, rotation and other attributes.

- (void) transformAncestors  

performs OpenGL view-matrix transformation of it's ancestors. Generally the ancestors are already transformed, but in certain cases (eg: attaching a FBO) it's necessary to transform the ancestors again.

Since:
v0.7.2
- (void) unschedule: (SEL)  s  

unschedule a selector

- (void) visit  

recursive method that visit its children and draw them

- (CGAffineTransform) worldToNodeTransform  
Todo:
worldToNodeTransform needs documentation
Since:
v0.7.1

Property Documentation

- (CGPoint) anchorPoint [read, write, assign]

The normalized coordinates of the anchor point. A (0,0) value means bottom-left corner. (1,1) means top-right corner, (0.5, 0.5) means the center. Sprites and other "textured" Nodes have a default anchorPoint of (0.5f, 0.5f). IMPORTANT: The anchorPoint can have values lower than 0 and higher than 1.

Since:
v0.8

Definition at line 158 of file CCNode.h.

- (CCCamera *) camera [read, assign]

A Camera object that lets you move the node using camera coordinates. If you use the Camera then position, scale & rotation won't be used

Definition at line 93 of file CCNode.h.

- (CGSize) contentSize [read, write, assign]

The untransformed size of the node. The contentSize remains the same no matter the node is scaled or rotated. All nodes has a size. Layer and Scene has the same size of the screen.

Since:
v0.8

Definition at line 164 of file CCNode.h.

- (CCGridBase *) grid [read, write, retain]

A Grid object that is used when applying Effects

Definition at line 96 of file CCNode.h.

- (CCNode *) parent [read, write, assign]

A weak reference to the parent

Definition at line 108 of file CCNode.h.

- (CGPoint) position [read, write, assign]

Position (x,y) of the node in OpenGL coordinates. (0,0) is the left-bottom corner

Definition at line 140 of file CCNode.h.

- (BOOL) relativeAnchorPoint [read, write, assign]

If YES the transformtions will be relative to it's anchor point. Sprites, Labels and any other sizeble object use it have it enabled by default. Scenes, Layers and other "whole screen" object don't use it, have it disabled by default.

Definition at line 171 of file CCNode.h.

- (float) rotation [read, write, assign]

The rotation (angle) of the node in degrees. 0 is the default rotation angle

Definition at line 132 of file CCNode.h.

- (float) scale [read, write, assign]

The scale factor of the node. 1.0 is the default scale factor. It modifies the X and Y scale at the same time

Definition at line 134 of file CCNode.h.

- (float) scaleX [read, write, assign]

The scale factor of the node. 1.0 is the default scale factor. It only modifies the X scale factor.

Definition at line 136 of file CCNode.h.

- (float) scaleY [read, write, assign]

The scale factor of the node. 1.0 is the default scale factor. It only modifies the Y scale factor.

Definition at line 138 of file CCNode.h.

- (int) tag [read, write, assign]

A tag used to identify the node easily

Definition at line 111 of file CCNode.h.

- (CGPoint) transformAnchor [read, assign]

The transformation anchor point in absolute pixels. since v0.8 you can only read it. If you wish to modify it, use anchorPoint instead

Definition at line 151 of file CCNode.h.

- (void *) userData [read, write, assign]

A custom user data pointer

Definition at line 117 of file CCNode.h.

- (float) vertexZ [read, write, assign]

The real openGL Z vertex. Differences between openGL Z vertex and cocos2d Z order:

  • OpenGL Z modifies the Z vertex, and not the Z order in the relation between parent-children
  • OpenGL Z might require to set 2D projection
  • cocos2d Z order works OK if all the nodes uses the same openGL Z vertex. eg: vertexZ = 0
    Warning:
    : Use it at your own risk since it might break the cocos2d parent-children z order
    Since:
    v0.8

Definition at line 130 of file CCNode.h.

- (BOOL) visible [read, write, assign]

Whether of not the node is visible. Default is YES

Definition at line 90 of file CCNode.h.

- (int) zOrder [read, assign]

The z order of the node relative to it's "brothers": children of the same parent

Definition at line 99 of file CCNode.h.


The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs Properties Defines

Generated on Wed Nov 18 16:57:57 2009 for cocos2d for iPhone 0.9.0-alpha by  doxygen 1.6.1