This is MiscUKUTMCoord.m in view mode; [Download] [Up]
/*============================= MiscUKUTMCoord.m ============================*/ /* MiscUKUTMCoord class contains and supports values representing locations in the UK National Grid Universal Transverse Mercator coordinate system as of March 1983. DMA Release 0.8, Copyright @1993 by Genesis Project, Ltd. All Rights Reserved. For further information on terms and conditions see: Documentation/GISKit/Agreements-Legal-README HISTORY 26-Mar-93 Dale Amon at GPL Created. */ #import <misckit/miscgiskit.h> @implementation MiscUKUTMCoord /*===========================================================================*/ /* Internal methods */ /*===========================================================================*/ static id theUKGrid = nil; + makeGrid { if (!theUKGrid) {theUKGrid = [[MiscUTMConstants allocFromZone: [self zone]] initGridName: "UK National Grid" trueOrigin: 49.0 : -2.0 inGrid: 400000.0 : -100000.0 onSphere: 6377563.396 : 6356256.910 centralMeridianScaling: 0.9996012717]; [theUKGrid setProtected]; } return theUKGrid; } /*===========================================================================*/ /* Initialization methods. If we don't already have a UTM constants object for the UK National Grid, create one instance that all will share and that cannot be deleted. Constants are from the UK Ordinance Survey document, "Transverse Mercator Projection, Constants, Formula and Methods", March 1983 */ /*===========================================================================*/ /* DESIGNATED INITIALIZER */ -initDescription: (char *) txt {return [super initDescription: txt constants: [MiscUKUTMCoord makeGrid]];} /*---------------------------------------------------------------------------*/ /* Block the designated initializer of our parent class */ -initDescription: (char *) txt constants: anObject { [self error:" %s class should not be sent '%s' messages\n", [[self class] name], sel_getName(_cmd)]; return self; } /*===========================================================================*/ /* Archive methods */ /*===========================================================================*/ - awake { [super awake]; [constants setUnprotected]; [constants free]; [MiscUKUTMCoord makeGrid]; return self; } @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.