• Stars
    star
    139
  • Rank 253,681 (Top 6 %)
  • Language
    Objective-C
  • License
    BSD 3-Clause "New...
  • Created almost 14 years ago
  • Updated almost 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A location-based augmented reality environment for the iPhone.

SGAREnvironment v0.3.8

Note: This codebase is legacy and unsupported. If you have any questions, email [email protected].

ABSTRACT

A pluggable AR (Augmented Reality) environment that can be used by any MKAnnotation.

USAGE

Note: this library is being converted to a framework, which should simplify the following steps somewhat.

  1. Run ./build_dist
  2. Add /path/to/SGAREnvironment-v*../Headers to the "Header Search Paths" setting.
  3. Add /path/to/SGAREnvironment-v*../$(PLATFORM_NAME) to "Library Search Paths" setting.
  4. Add the following frameworks: OpenGLES, MapKit, CoreLocation, CoreGraphics, QuartzCore, UIKit, AVFoundation and Foundation.
  5. Go to your target's info and add "-all_load -ObjC -l SGAREnvironment" to the "Other Linker Flags" setting under the Build tag. This will inform the linker to load the categories from the static library.
  6. Import SGAREnvironment.h in your pre-compiled header file or wherever you plan on accessing the library.

BUILD REQUIREMENTS

iOS SDK 4.0+ (3.1 may work, although you'll probably have to create a custom Build)

Frameworks:

  • CoreLocation
  • Foundation
  • MapKit
  • OpenGLES
  • CoreGraphics
  • QuartzCore
  • UIKit
  • AVFoundation

PACKING LIST

Documentation

All the HTML files generated by HeaderDoc.

  • SGAREnvironment.html - The table of contents for the entire documentation structure.

Static Libraries

  • libSGAREnvironment.a - The static library built for the iPhone Device.
  • libSGAREnvironment-sim.a - The static library built for the iPhone Simulator.

Headers

  • SGAnnotationView.h - Defines a subclass of UIView that displays SGAnnotations in the SGARView.
  • SGAnnotationViewContainer.h - Defines a subclass of UIView that contains a set of SGRecordAnnoationViews.
  • SGARNavigationViewController.h - Defines a subclass of UIImagePickerViewController that displays the SGARView.
  • SGARResponder.h - Defines the protocol that receives gestures from the SGARView.
  • SGARView.h - Defines a subclass of UIView that renders SGAnnotations in an augmented reality environment.
  • SGEnvironmentConstants.h - Defines constants that are used in the augmented reality environment.
  • SGRadar.h - Defines a subclass of UIView that displays SGAnnotationViews in a radar-ish manner.
  • SGSAREnvironment.h - Contains all the header files for the augmented reality source files.

Images

The default images used in the SDK. Feel free to override these with your own. They aren't very pretty at the moment.

  • SGBluePin.png - A blue pin.
  • SGBottomInspectorBackground.png - The bottom image of a non-customizable SGAnnotationView.
  • SGCloseButton.png - The close button image of a non-customizable SGAnnotationView.
  • SGDefaultContainer.png - The default SGAnnotationViewContainer image.
  • SGDefaultProfilePicture.png - The default profile picture used in SGAnnotationView.
  • SGDefaultRadarCurrentLocation.png - The image that represents the devices current location on the SGRadar.
  • SGDefaultRadarTargetImage.png - The default target image for SGRecordAnnotation on the SGRadar.
  • SGGlassTargetBackground.png - The default target background for SGAnnotationView.
  • SGMiddleInspectorBackground.png - The middle, stretchable portion of a non-customizable SGAnnotationView.
  • SGRedPin.png - A red pin.
  • SGTopInspectorBackground.png - The top image of a non-customizable SGAnnotationView.

CHANGES FROM PREVIOUS VERSIONS

Version 0.3.8

  • The prefix file was in charge of importing important frameworks. We need to move those imports into the header files because the prefix might not be the same in other projects.

Version 0.3.7

  • Fixed an issue where the bearing wasn't being calculated properly for certain earth quadrants

Version 0.3.6

  • Added support for iOS4

Version 0.3.5

  • Refactored and polished up some of the code in order to move the project into a public repository

Version 0.3.4

  • Touch events will now return the nearest SGAnnotationView in the AR environment

Version 0.3.3

  • Fixed an issue where touch events weren't being triggered for SGAnnotationViews within the AR environment

Version 0.3.2

  • Prefixed all methods in the SGARResponder with AR.

Version 0.3.1

  • Restructured project.

Version 0.3.0

  • Upgraded SGLocationService to use version 0.1 of the SimpleGeo API
  • Models have been updated to reflect the new GeoJSON format returned from SimpleGeo queries
  • Added a new NSDictionary and NSArray category to help access key specific to GeoJSON format
  • Replaced updateRecordWithGeoJSONDictionary: with updateRecordWithGeoJSONObject:
  • Removed userDefinedProperties from SGRecordAnnotation and replaced it with properties
  • Reworked the SGGeoJSONEncoder

Version 0.2.3

  • Updated the default container images.
  • Updated SGRadar to present target images that are on the border of the radar.
  • Update SGLayerMapView to load more records based on a time interval.
  • Added media as a filter type.

Version 0.2.1

  • Allow filtering by types in nearby requests.

Version 0.2.0

  • Added reverse geocoding.
  • Implemented the new SimpleGeo endpoints that allow multiple records to be added and retrieved.

Version 0.1.9

  • SGLayer objects will now update records as they are recieved from the SGLocaitonService.
  • SGRecord defines a new property that stores user defined properties.
  • SGOAuth objects can be restored from a save point.
  • Nearby searchs can be done using a Geohash or a lat/lon coordinate paired with a radius.

Version 0.1.8

  • First version.

Copyright (c) 2010-2011 SimpleGeo, Inc. All rights reserved.

More Repositories

1

polymaps

Polymaps is a free JavaScript library for making dynamic, interactive maps in modern web browsers.
JavaScript
1,594
star
2

python-simplegeo

A client interface for SimpleGeo's API.
Python
105
star
3

libgeohash

A pure C implementation of the Geohash algorithm.
C
99
star
4

SimpleGeo.framework

Objective-C client library for SimpleGeo
Objective-C
84
star
5

python-geohash

SimpleGeo's fork of python-geohash (w/East-West fixes)
C++
56
star
6

jts

JTS Topology Suite
Java
48
star
7

Services_SimpleGeo

A PEAR package for SimpleGeo's API
PHP
41
star
8

betashapes

Python
41
star
9

java-simplegeo

A Java client library for SimpleGeo's API. Documentation located at https://ci.public.simplegeo.com/job/java-simplegeo/javadoc/
Java
34
star
10

thrift-fb303

Facebook's contrib fb303 library
C++
28
star
11

dream

Hyperminimal WSGI framework
Python
25
star
12

SimpleGeo-iOS

Objective-C
24
star
13

goldengate

Golden Gate is a cloud gateway.
Python
21
star
14

python-simplegeo-shared

Python
19
star
15

simplegeo-android-client

An Android client that interfaces with the SimpleGeo API
Java
18
star
16

python-geojson

A geojson library
Python
16
star
17

pyutil

A collection of functions and data structures that we've found useful over the years.
Python
15
star
18

SGARViewStyles

An example of stylizing and using the AR view included in SimpleGeo's iPhone SDK
C
14
star
19

rtree

Spatial indexing for Python
Python
14
star
20

SimpleGeo-Mac

Objective-C
13
star
21

kgio

kgio provides non-blocking I/O methods for Ruby
Ruby
13
star
22

pygeoip

A pure Python alternative to MaxMind's C-based Python API for binary GeoIP databases.
Python
13
star
23

spatialindex

A general framework for developing spatial indices.
C++
12
star
24

poster

Streaming HTTP uploads and multipart/form-data encoding
Python
11
star
25

shapely

Geometric objects, predicates, and operations
Python
11
star
26

python-simplegeo-places

Python SDK for Places service
Python
11
star
27

python-hbase-thrift

Debianized Egg of the Thrift client for HBase
Python
10
star
28

erlang

Erlang
9
star
29

simplegeo

NodeJS module for SimpleGeo
JavaScript
9
star
30

setproctitle

A setproctitle implementation for Python
C
9
star
31

django-simplegeo-demos

A demo Django application showing how to use SimpleGeo Context with Flickr's Panda API
Python
9
star
32

txoauth-OLD

oauth for Twisted
Python
9
star
33

hadoop-hbase

Java
8
star
34

simplegeo.js

JavaScript client for SimpleGeo
JavaScript
8
star
35

simplegeo-dotnet

A .NET client for SimpleGeo
Visual Basic
8
star
36

sqlalchemy

Python
7
star
37

scribe

SimpleGeo Debian build of Scribe
C++
7
star
38

tillicum

Python
7
star
39

python-simplegeo-context

Python
7
star
40

nginx

C
7
star
41

simplegeo-places-import

Python
6
star
42

greenlet

Lightweight in-process concurrent programming
C
6
star
43

clusto-sgext

SimpleGeo Clusto Extensions
Python
6
star
44

simplegeo-java-client

A Java HTTP client that accesses the SimpleGeo API
Java
6
star
45

zbase32

An alternate base32 encoder (not RFC 3548 compliant)
Python
6
star
46

thrift

A software framework for scalable cross-language services development.
C++
6
star
47

metartg

An rrdtool frontend for ganglia that doesn't suck
Python
5
star
48

rdialog

RDialog handles the interface between ruby scripts and dialogโ€™s command-line interface.
Ruby
5
star
49

simplegeo-test-server

Ruby
5
star
50

SGObjCHTTP

Objective-C
4
star
51

fastercsv

A complete replacement for the standard Ruby CSV library
Ruby
4
star
52

authorize

A python library for interacting with authorize.net
Python
4
star
53

yjpagent

Debianized YourKit Profiling Agent
4
star
54

hadoop

Java
4
star
55

puppet-postgresql

A Puppet module for managing postgres
Shell
4
star
56

trialcoverage

A plugin to integrate Twisted trial with Ned Batchelder's coverage.py
Python
4
star
57

hadoop-pig

Java
4
star
58

django-storages

This is a clone of django-storages on bitbucket. DO NOT SUBMIT CODE FIXES/ISSUES HERE. Instead visit https://bitbucket.org/david/django-storages/issues?status=new&status=open
Python
4
star
59

setuptools-trial

Python
3
star
60

rabbitmq-server

Erlang
3
star
61

harrison

SimpleGeo's offline task system
JavaScript
3
star
62

ganglia

C
3
star
63

pylibmc

Ubuntuized pylibmc
C
3
star
64

webob

WebOb provides objects for HTTP requests and responses.
Python
3
star
65

nose

nose extends unittest to make testing easier
Python
3
star
66

ipaddr

Python
3
star
67

libmemcached

An open source C/C++ client library and tools for the memcached server
C
3
star
68

simplejson

Updated Debian packaging for simplejson
Python
3
star
69

simplegeo-blackberry-playbook-checkin

A sample checkin app using SimpleGeo on the Blackberry Playbook
ActionScript
2
star
70

elasticsearch-deb

ElasticSearch package for Debian/Ubuntu
Shell
2
star
71

django-south

Intelligent schema migrations for django apps
Python
2
star
72

decoroute

Pattern-matching based WSGI-compliant URL routing tool
Python
2
star
73

barker

Clive is a hive mind for your clusters.
Python
2
star
74

zbase62

Python
2
star
75

python-metar

2
star
76

wadl-library

Collection of WADL (Web Application Description Language) representations for APIs, extended for Apigee.
1
star
77

simplegeo-keyring

GPG keys for SimpleGeo packages
1
star
78

python-txsimplegeo.shared

Python
1
star
79

lucene-solr-3.1

Java
1
star
80

python-coverage

Python
1
star
81

psycopg2

2.4.1
C
1
star
82

eventlet

Eventlet is a concurrent networking library for Python
Python
1
star
83

yjp-controller-api

1
star
84

cobertura

A Java code coverage analysis tool
Java
1
star
85

importlib

Python
1
star
86

nodejs-pkg-tools

1
star
87

piro

Library and command-line tool for intelligently controlling services.
Python
1
star
88

unicorn

Unicorn is an HTTP server for Rack applications designed to only serve fast clients on low-latency, high-bandwidth connections.
Ruby
1
star