version 1.3, 2006/03/08 04:58:14 |
version 1.7, 2018/10/18 04:59:45 |
|
|
// Copyright 2006 OpenXM.org. All rights reserved. |
// Copyright 2006 OpenXM.org. All rights reserved. |
// |
// |
|
|
|
#import <OpenGL/OpenGL.h> |
|
#import <OpenGL/gl.h> |
|
#import <OpenGL/glu.h> |
|
#import <GLUT/glut.h> |
|
|
#import "MyOpenGLView.h" |
#import "MyOpenGLView.h" |
#import "MyOpenGLController.h" |
#import "MyOpenGLController.h" |
#include "mygl.h" |
#include "mygl.h" |
|
|
|
|
|
|
@implementation MyOpenGLView |
@implementation MyOpenGLView |
-(id) initWithFrame: (NSRect) frame { |
-(id) initWithFrame: (NSRect) frame { |
NSLog(@"initWithFrame\n"); |
NSLog(@"initWithFrame\n"); |
|
|
yeye = 0.0; |
yeye = 0.0; |
zeye = 2.0; |
zeye = 2.0; |
initGl = 1; |
initGl = 1; |
|
myfont = [ NSFont systemFontOfSize: 10]; |
[super initWithFrame: frame]; |
[super initWithFrame: frame]; |
if (self) { |
if (self) { |
NSOpenGLPixelFormatAttribute attributes[]={ |
NSOpenGLPixelFormatAttribute attributes[]={ |
|
|
ii = [gc getI4]; |
ii = [gc getI4]; |
x = v[0]; y = v[1]; z = v[2]; c = v[3]; |
x = v[0]; y = v[1]; z = v[2]; c = v[3]; |
p = ii[0]; q=ii[1]; r=ii[2]; s=ii[3]; |
p = ii[0]; q=ii[1]; r=ii[2]; s=ii[3]; |
// NSLog(@"opCode=%d, (x,y,z,c)=(%f,%f,%f,%f), (p,q,r,s)=(%d,%d,%d,%d)\n",op,x,y,z,c,p,q,r,s); |
// NSLog(@"opCode=%d, (x,y,z,c)=(%f,%f,%f,%f), (p,q,r,s)=(%d,%d,%d,%d)\n",op,x,y,z,c,p,q,r,s); |
switch(op) { |
switch(op) { |
case CFEPglBegin: |
case CFEPglBegin: |
glBegin(p); |
glBegin(p); |
|
|
glClearDepth(x); break; |
glClearDepth(x); break; |
case CFEPglColor4f: |
case CFEPglColor4f: |
glColor4f(x,y,z,c); break; |
glColor4f(x,y,z,c); break; |
|
case CFEPglDisable: |
|
glDisable(p); break; |
|
case CFEPglEnable: |
|
glEnable(p); break; |
case CFEPglEnd: |
case CFEPglEnd: |
glEnd(); break; |
glEnd(); break; |
case CFEPglFlush: |
case CFEPglFlush: |
glFlush(); [self setInitGL: nil]; [self setNeedsDisplay: YES]; break; |
glFlush(); [self setInitGL: nil]; [self setNeedsDisplay: YES]; break; |
|
case CFEPglLineStipple: |
|
glLineStipple(p,q); break; |
|
case CFEPglLineWidth: |
|
glLineWidth(x); break; |
|
case CFEPglNormal3f: |
|
glNormal3f(x,y,z); break; |
case CFEPglPointSize: |
case CFEPglPointSize: |
glPointSize(x); break; |
glPointSize(x); break; |
case CFEPglRectf: |
case CFEPglRectf: |
glRectf(x,y,z,c); break; |
glRectf(x,y,z,c); break; |
case CFEPglVertex3f: |
case CFEPglVertex3f: |
glVertex3f(x,y,z); break; |
glVertex3f(x,y,z); break; |
|
case CFEPglVertex2f: |
|
glVertex2f(x,y); break; |
|
|
case CFEPglib_line: |
case CFEPglib_line: |
glib_line(x,y,z,c,p); break; |
glib_line(x,y,z,c,p); break; |
|
|
-(void) glib3_std_scene0 { |
-(void) glib3_std_scene0 { |
glib3_std_scene0(xeye,yeye,zeye); |
glib3_std_scene0(xeye,yeye,zeye); |
} |
} |
|
-(void) mouseDown: (NSEvent *) theEvent { |
|
NSLog(@"Mouse is down\n"); |
|
} |
@end |
@end |
|
|
// Original glib functions |
// Original glib functions |