58 lines
776 B
C
58 lines
776 B
C
|
|
#ifndef _vector2
|
||
|
|
|
||
|
|
#define _vector2
|
||
|
|
|
||
|
|
|
||
|
|
// Macros
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
#include "stdlib.h"
|
||
|
|
|
||
|
|
extern char * __ClassNames[];
|
||
|
|
|
||
|
|
|
||
|
|
// Includes
|
||
|
|
|
||
|
|
#include <stdlib.h>
|
||
|
|
|
||
|
|
#include <define.c>
|
||
|
|
|
||
|
|
#include <stddef.h>
|
||
|
|
|
||
|
|
#include "time.h"
|
||
|
|
|
||
|
|
#include <stdbool.h>
|
||
|
|
|
||
|
|
#include "stdio.h"
|
||
|
|
|
||
|
|
|
||
|
|
typedef struct vector2{
|
||
|
|
|
||
|
|
unsigned short __classIndex;
|
||
|
|
|
||
|
|
float x;
|
||
|
|
|
||
|
|
float y;
|
||
|
|
|
||
|
|
|
||
|
|
} vector2;
|
||
|
|
|
||
|
|
void vector2_constructor( vector2 * this, float x, float y );
|
||
|
|
|
||
|
|
vector2 * vector2_operator_plus( vector2 * this, vector2 * b );
|
||
|
|
|
||
|
|
vector2 * vector2_operator_add( vector2 * this, struct vector2 * b );
|
||
|
|
|
||
|
|
void vector2_add( vector2 * this, vector2 * a );
|
||
|
|
|
||
|
|
void vector2_subtract( vector2 * this, vector2 * a );
|
||
|
|
|
||
|
|
int vector2_length( vector2 * this );
|
||
|
|
|
||
|
|
vector2 vector2_new( float x, float y );
|
||
|
|
|
||
|
|
vector2 * vector2_newPointer( float x, float y );
|
||
|
|
|
||
|
|
#endif
|