Monthly Archives: July 2014

WKT 转AGSGeometry

只支持POINT,LINESTRING,POLYGON 三种类型 -(id)initWithWKT:(NSString*)wkt { id rtn = nil; if (self = [super init]) { NSCharacterSet *characterSet= [NSCharacterSet characterSetWithCharactersInString:@”( “]; NSScanner * scanner = [[NSScanner alloc] initWithString:wkt]; NSString * type=@””; double x,y; NSMutableArray * paths = [NSMutableArray new]; NSMutableArray * path =[NSMutableArray new]; int m=0; BOOL isFirst = NO; NSString * tType; while ([scanner isAtEnd] == […]

ArcGIS API for iOS Leave a comment

gaiaGeom到AGSGeometry的转换

在iOS应用中做离线数据管理和查询的时候,libspatialite是一个不错的选择。那么使用ArcGIS runtime for iOS 作为基本开发框架的时候,数据交互就成为一个基本的功能,libspatialite 提供的Geometry为gaiaGeom 类型,ArcGIS runtime for iOS无法使用,需要将其转换为AGSGeometry对象。 下面的代码完成数据的转换: – (AGSGeometry *) geometryWithGaiaGeomColl: (void *)geometry { int pts = 0; int lns = 0; int pgs = 0; int type; int iv; int ib; double x; double y; double x0; double y0; gaiaPointPtr pt; gaiaLinestringPtr ln; gaiaPolygonPtr pg; gaiaRingPtr rng; int ring_points; int n_items; […]

ArcGIS Leave a comment

spatialite 支持3857

在向spatialite导入数据的时候,如果数据为web墨卡托投影的话,则数据无法导入,提示参考系不存在,解决办法是执行下面的sql语句 insert into spatialrefsys(srid,authname,authsrid,refsysname,proj4text) values(3857,’epsg’,3857,’Web Mercator’,’PROJCS[“Google Mercator”, GEOGCS [ “WGS 84″, DATUM [“World Geodetic System 1984 (EPSG ID 6326)”, SPHEROID [“WGS 84 (EPSG ID 7030)”, 6378137.0, 298.257223563]], PRIMEM [ “Greenwich”, 0.000000 ], UNIT [“Decimal Degree”, 0.0174532925199433]], PROJECTION [“Popular Visualisation Pseudo-Mercator”], PARAMETER [“Latitudeoforigin”, 0.0], PARAMETER [“CentralMeridian”, 0.0], PARAMETER [“FalseEasting”, 0.0], PARAMETER [“FalseNorthing”, 0.0], UNIT [“Meter”, 1.0]]’)

ArcGIS Leave a comment

限制UITextView 只能输入数字

在有些情况下,需要限制UITextView只能限制输入数字,特别是在填写表格的时候,能够预防数据的错误录入,实现改功能比较简单,只需要实现 – (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { NSCharacterSet *myCharSet = [NSCharacterSet characterSetWithCharactersInString:@”0123456789″]; for (int i = 0; i < [ text length ]; i++) { unichar c = [ text characterAtIndex:i]; if ([myCharSet characterIsMember:c]) { return YES; } } return NO; }

iOS Leave a comment

自定义UICollection的Action

在UICollection中提供了Action的方法对UICollectionView进行处理,这些操作包括复制,删除等动作。如果想定义自己的Action,那么请参考下面的文章。 http://stackoverflow.com/questions/13458503/copy-callout-in-uicollectionview/13618212#13618212 效果图如下: 

ArcGIS API for iOS Leave a comment