hansonchan / route-me Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/route-me
Automatically exported from code.google.com/p/route-me
We will need overlay support for most of the tile sources.
We need a standard map overlay interface for static overlays and for
overlays with positions bound to the map.
Original issue reported on code.google.com by [email protected]
on 19 Sep 2008 at 6:50
In RMMapContents.m line 329 (r198) :
NSDictionary *userInfo = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithFloat:zoomIncr], @"zoomIncr",
[NSNumber numberWithFloat:targetZoom], @"targetZoom",
CGPointCreateDictionaryRepresentation(pivot), @"pivot",
callback, @"callback", nil];
The function 'CGPointCreateDictionaryRepresentation' returns a Core Foundation
object with a +1 retain
count (owning reference). But this object is no longer referenced after this
point and has a retain count of
+1 (object leaked).
Modification could be something like :
CFDictionaryRef pivotRef = CGPointCreateDictionaryRepresentation(pivot);
NSDictionary *userInfo = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithFloat:zoomIncr], @"zoomIncr",
[NSNumber numberWithFloat:targetZoom], @"targetZoom",
pivotRef, @"pivot",
callback, @"callback", nil];
CFRelease(pivotRef);
-- loïc
Original issue reported on code.google.com by [email protected]
on 25 Feb 2009 at 2:34
Steps to reproduce the problem
Add the following test call to the end of MapViewController viewDidLoad method :
CLLocationCoordinate2D newLocation;
newLocation.latitude = -33.9495;
newLocation.longitude = 151.2381;
[[mapView contents] moveToLatLong:newLocation];
This moves the map to display different tiles, but should not move the marker.
Panning around after the move will make the problem obvious.
There are two issues :
One is that the marker position is not adjusted correctly on screen - I think
this is fixed by a one
line change (latest commit).
The other is that the tiles are not displayed properly after the move - if the
location is
sufficiently distant, this won't be noticed, but if the location being moved to
is nearby, the tiles
won't redraw properly (panning the map around after the location change will
reveal this
problem).
RMTileLoader doesn't seem to be invalidating certain tiles correctly after the
map is moved
programatically (calling the moveBy function doesn't have this problem). I
think perhaps the
problem is in updateLoadedImages, but any pointers would be gratefully
received.
Original issue reported on code.google.com by kennygrant
on 9 Nov 2008 at 3:49
What steps will reproduce the problem?
1. Create a new xcode project "myMapTest"
2. Add class files from your /RouteMe-0.8/MapView/Classes dir
3. Add to project frameworks: proj4.xcodeproj, QuartzCore.framework,
CoreLocation.framework, CoreFoundation.framework
4. Attempt to compile.
What is the expected output? What do you see instead?
I would expect the project to compile successfully. Instead the compiler
finds 42 errors. I understand that the "MapView" project needs to
reference code inside the mysterious "Proj4" xcode project but I can't
figure out how to integrate two executable project/targets in my
"myMapTest" project. It would be appreciated if you could explain how this
works.
What version of the product are you using? On what operating system?
RouteMe 0.8 on iPhone OS 2.1
Please provide any additional information below.
Again, thanks for your hard work on this component and sorry for bombarding
you with questions/requests. I'm pretty new to mac/cocoa development so
these IDE project settings are all new to me.
Original issue reported on code.google.com by [email protected]
on 22 Sep 2008 at 6:44
What steps will reproduce the problem?
1. Scroll the map, or click on a marker
2. See that the map continues panning in one direction
What is the expected output? What do you see instead?
The map should cease moving (immediately or shortly) when the touch has
completed.
What version of the product are you using? On what operating system?
rev 163, I believe this to be a defect introduced by rev 161.
Original issue reported on code.google.com by [email protected]
on 13 Dec 2008 at 7:55
What steps will reproduce the problem?
1. Open any map.
2. Double tap to zoom in.
What is the expected output? What do you see instead?
For better usability, I would expect to see a smooth zoom to the next native
zoom level. Instead,
the map "snaps" to the next zoom level, resulting in a jarring transition and
user losing spatial
awareness.
What version of the product are you using? On what operating system?
SVN r154, iPhone OS Simulator 2.1
Please provide any additional information below.
Not applicable?
Original issue reported on code.google.com by [email protected]
on 3 Dec 2008 at 8:20
-(void) dealloc
{
CGPathRelease(path);
[super dealloc];
}
...
Elsewhere in the object the instance variable "points" is created as an
array. This array is never released.
Furthermore, it doesn't appear to ever be used anywhere other than in one
method which just creates objects to put into the array. If it is never
accessed, it can most likely be deprecated and removed from the code.
The nasty method is as follows... the suggested fix is to strip out the
instance variable and everything that uses it.
- (void) addLineToXY: (RMXYPoint) point
{
// NSLog(@"addLineToXY %f %f", point.x, point.y);
NSValue* value = [NSValue value:&point withObjCType:@encode(RMXYPoint)];
if (points == nil)
{
points = [[NSMutableArray alloc] init];
[points addObject:value];
origin = point;
self.position = [[contents mercatorToScreenProjection] projectXYPoint:
origin];
// NSLog(@"screen position set to %f %f", self.position.x, self.position.y);
CGPathMoveToPoint(path, NULL, 0.0f, 0.0f);
}
else
{
[points addObject:value];
point.x = point.x - origin.x;
point.y = point.y - origin.y;
CGPathAddLineToPoint(path, NULL, point.x, -point.y);
[self recalculateGeometry];
}
[self setNeedsDisplay];
}
Original issue reported on code.google.com by [email protected]
on 24 Feb 2009 at 5:27
When the program launches it first tries to load tile images at mercator
0,0. This loading is almost immediately cancelled; but its still poor form.
Original issue reported on code.google.com by [email protected]
on 18 Sep 2008 at 5:31
What steps will reproduce the problem?
1. compile MapView
2. click on the info button
3. nothing happens
What is the expected output? What do you see instead?
I was expecting to see configuration options. The info button just flashes.
I'm assuming that whatever is on the other side of the map view is
configuration information, like which map source is being used.
What version of the product are you using? On what operating system?
Latest build checked out of subversion.
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 27 Jan 2009 at 7:15
Look at this service based on OpenStreetMap. There are doing routing and it's
pretty smooth !
http://data.giub.uni-bonn.de/openrouteservice/index.php
Original issue reported on code.google.com by francois.proulx
on 24 Nov 2008 at 12:14
What steps will reproduce the problem?
1. Allocating a RMMapView without a coordinate
RMMapView *mapView=[[[RMMapView alloc]initWithFrame:frame]autorelease];
mapView.delegate=self;
self.view=mapView;
2. will crash in
- (id) initForView: (UIView*) view WithTileSource:
(id<RMTileSource>)_tileSource WithRenderer:
(RMMapRenderer*)_renderer LookingAt:(CLLocationCoordinate2D)latlong {
[self moveToLatLong:latlong]; //crash
}
3. The crash happens only on the iPhone in release mode.
What version of the product are you using? On what operating system?
r190 on iPhone 2.2
Original issue reported on code.google.com by [email protected]
on 20 Jan 2009 at 7:37
What steps will reproduce the problem?
1. Create a RMMapView with frame set to CGRectZero and a valid coordinate
2. Set it to the view of a view
3. Add a RMMarker to the map
What is the expected output? What do you see instead?
Marker and center show up in the correct location
Marker and center show up to the left where the center used to be at 0,0
What version of the product are you using? On what operating system?
Revision 192
iPhone OS 2.2 \ (Build Device - 2.0 | Debug)
Please provide any additional information below.
I added the following two lines of code to fix this to the setFrame method in
RMMapView
- (void)setFrame:(CGRect)frame
{
CLLocationCoordinate2D center = self.mapCenter; //NEW
CGRect bounds = CGRectMake(0, 0, frame.size.width, frame.size.height);
[mercatorToScreenProjection setScreenBounds:bounds];
background.frame = bounds;
layer.frame = frame;
overlay.frame = bounds;
[tileLoader clearLoadedBounds];
[tileLoader updateLoadedImages];
[renderer setFrame:frame];
[self moveToLatLong:center]; //NEW
}
Original issue reported on code.google.com by [email protected]
on 6 Feb 2009 at 9:25
What steps will reproduce the problem?
1. Pan the map left or right until it loops
2. Inspect the origin.x value
3.
What is the expected output? What do you see instead?
The origin.x mercator value should have reset itself as your looped so if
you started at Los Angeles and the origin.x = -13228504.803257 and you kept
panning left until you got back to Los Angeles the origin.x should still be
-13228504.803257
Instead, you get origin.x = -53283074.465077 Keep going left until it
loops again and you'll get origin.x = -93348751.582676
Please use labels and text to provide additional information.
I think we should set the origin to reset itself when the map loops
otherwise other methods like latLongToPixel may not function properly.
Original issue reported on code.google.com by [email protected]
on 22 Oct 2008 at 11:10
What steps will reproduce the problem?
1. Look at initForContents. this line:
set = [[NSMutableArray alloc] init];
has no corresponding 'dealloc' for the 'set' Array. So, you leak that array.
What is the expected output? What do you see instead?
using the Leaks tool, you see the array leak.
What version of the product are you using?
1.92
Please provide any additional information below.
If you add a dealloc() like this:
- (void) dealloc
{
[set release];
[super dealloc];
}
It appears to get rid of the leak.
Original issue reported on code.google.com by [email protected]
on 18 Feb 2009 at 5:13
It would be really neat to add geocoding support using Google Maps HTTP REST
service. You specify
the google maps api key, and you can use some class to generate markers based
on geocoded
locations.
http://code.google.com/apis/maps/documentation/services.html#Geocoding_Direct
Original issue reported on code.google.com by francois.proulx
on 2 Nov 2008 at 4:02
What steps will reproduce the problem?
1. create a new UIViewController contains RMMapView, ex:MapViewController
2. push the MapViewController from another navigation controller
3. clicking back from MapViewController will cause EXC_BAD_ACCESS if
self.mapview is released in dealloc
What is the expected output? What do you see instead?
expected output: the mapview is dealloc properly, instead im getting
EXC_BAD_ACCESS message
What version of the product are you using? On what operating system?
RouteMe version 0.10, Mac OS 10.5.5
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 7 Jan 2009 at 4:35
What steps will reproduce the problem?
1. Place both fingers on the non-touchscreen parts of the glass
2. Bring them together
The program jitters strangely and stops responding to user input.
Original issue reported on code.google.com by [email protected]
on 18 Sep 2008 at 2:09
What steps will reproduce the problem?
1. Embed MapView into a separate project
2. try to plot markers in your separate project
3. Markers won't appear on map and debugger reads: <Error>:
CGImageSourceCreateWithDataProvider data parameter is nil\n
What is the expected output? What do you see instead?
We expect to see a marker plot
Markers fail to show up on the map and error message reads: <Error>:
CGImageSourceCreateWithDataProvider data parameter is nil\n
Please use labels and text to provide additional information.
I think the images in MapView's Resources directory are not getting copied
properly when you embed MapView inside another project.
Original issue reported on code.google.com by [email protected]
on 27 Oct 2008 at 6:55
I really love that u can now accelerate the map. But it would be nice to inform
the delegate as soon
as the map slowed down. In my opinion this is essential because if ure getting
markers from a
server you have no possibility to detect the new bounds (afterMapMove: and
afterMapTouch: are
fired earlier and the map is still moving).
-M
Original issue reported on code.google.com by [email protected]
on 10 Jan 2009 at 7:03
When I zoom into the map using the interactive inputs (two
fingers ;-) ), the drawn path is scaled, which is obvious by the
aliased edges of the path-elements. At some point, the console tells
me that the image is too large for the GPU and gets ignored. There are
two errors I get:
Tue Jan 13 14:52:10 unknown com.apple.SpringBoard[22] <Notice>:
CoreAnimation: 11096480 MB image is too large for GPU, ignoring
or
Thu Jan 15 14:14:15 unknown com.apple.SpringBoard[22] <Notice>:
CoreAnimation: 2506 by 2191 image is too large for GPU, ignoring
This error only occurs when running the app on the iPhone device, not the
simulator. Once this error occurs, I can't redraw to force the iPhone
to create a new, smaller image, because the iPhone/App crashes.
Another error which may be related to this is the relocation/moving of
the viewport of the map using moveToLatLong: the path isn't translated
along with the map, it just stays in its place on the screen.
Original issue reported on code.google.com by [email protected]
on 8 Feb 2009 at 2:16
What steps will reproduce the problem?
1. create a view with subviews in it
2. assign that view as a marker label view
3. touches on the visible marker label view do not trigger
tapOnLabelForMarker:onMap
What is the expected output? What do you see instead?
I would assume the entire view hierarchy would be clickable
What version of the product are you using? On what operating system?
r192, 10.5
Please provide any additional information below.
the patch changes the touch handling in RMMapView.m to address this case
Original issue reported on code.google.com by [email protected]
on 6 Feb 2009 at 1:11
Attachments:
What steps will reproduce the problem?
1. touch the map and pan it with your finger down
2.
3.
What is the expected output? What do you see instead?
As you pan (finger down) the "loading" images should be replaced with the
correct map tile, instead the "loading" images are shown. It's only when
you release your finger off the screen that the map tiles display.
Original issue reported on code.google.com by [email protected]
on 26 Sep 2008 at 3:21
What steps will reproduce the problem?
1. change the default zoom level by editing the source, move it a couple
points higher
2. in your test app place a marker at 40.7642, -73.9729, this is the
intersection of 5th ave and 59th st. in Manhattan (corner of central park)
3. view the location on the map when the app starts... at zoom 10 it is
considerably off of the location. At zoom 12 it moves a bit closer. At zoom
18 it is much closer. The lower the zoom number is the more the accuracy is
off.
What is the expected output? What do you see instead?
If everything is accurate, the marker should be in the exact same spot
regardless of the zoom level which the app is starting with. When you zoom
in or out from either of the test cases you should be in the same spot.
This shows what is going on... there is either a rounding error or a
fencepost error that gets dramatized with the lower zoom numbers. At 18 it
is very close, though not accurate.
http://img443.imageshack.us/my.php?image=zoomqo5.jpg
I am using the smooth zoom patch so it would be good if someone can test
against the unpatched source.
Original issue reported on code.google.com by db%[email protected]
on 8 Feb 2009 at 3:55
What steps will reproduce the problem?
1. Subclass off of RMMarker.
2. Add the subclass to the map.
3. Click on the marker.
What is the expected output? What do you see instead?
The tapOnMarker delegate method will not be called because it is not a
RMMarker. In RMMap.m, you should use isKindOfClass instead of isMemberOfClass.
What version of the product are you using? On what operating system?
Most recent, Mac OS X 10.5
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 12 Dec 2008 at 5:26
[deleted issue]
If you change the RMMapContents' tile source, the caches aren't cleared.
This causes incorrect tiles to be displayed.
Original issue reported on code.google.com by [email protected]
on 27 Oct 2008 at 2:44
What steps will reproduce the problem?
1. Trying to build on a Mac Mini
2. Follow embed instructions
3. Build does not work, with i386 error
What is the expected output? What do you see instead?
Expected to see successful compliation, but instead, when building target
MapView:
Libtool /Users/benh/Documents/MapView/build/Debug-iphonesimulator/libMapView.a
normal
i386 (1 error)
What version of the product are you using? On what operating system?
I used SVN to get latest version. Running on Leopard fully updated and XCode
3.1
Please provide any additional information below.
Sorry I haven't got any other Macs to test on. I assume the i386 error is
something about my
environment ? Thanks alot for this great project !!
Original issue reported on code.google.com by [email protected]
on 18 Dec 2008 at 4:58
What steps will reproduce the problem?
1. Go to RMVirtualEarthSource
2. change mapType to @"a"
3. change mapExtension = @".jpg";
What is the expected output? What do you see instead?
Now map should use virtual earth satellite tiles, but instead no tiles are
rendered.
What version of the product are you using? On what operating system?
Please provide any additional information below.
Satellite images are jpg images so CGImageCreateWithJPEGDataProvider should be
used instead
of CGImageCreateWithPNGDataProvider in the RMTileImage setImageToData method.
The image
type might be found from content-type of the URLResponse so that right data
provider can be
used
Original issue reported on code.google.com by [email protected]
on 21 Nov 2008 at 1:04
Standard nomenclature for these methods would be simply screenCoordinateBounds
and
coordinateBounds (without the initial "get"). The "get" prefix is reserved for
returning multiple
values indirectly via a buffer.
See
http://developer.apple.com/DOCUMENTATION/Cocoa/Conceptual/CodingGuidelines/Artic
les/Nami
ngMethods.html#//apple_ref/doc/uid/20001282-1004202-BCIGGFCC
Original issue reported on code.google.com by [email protected]
on 23 Feb 2009 at 1:38
What steps will reproduce the problem?
Call -[RMMapContents zoomWithLatLngBoundsNorthEast:SouthWest:] with two
points more than 90 degrees of latitude apart, such as 80oN and 20oS
What is the expected output? What do you see instead?
It should zoom to the rect, but instead freezes in an infinite loop.
What version of the product are you using? On what operating system?
Revision 173 on iPhone OS 2.2.
Please provide any additional information below.
I am attaching a patch that fixes this crash. The crash happens when the
code subtracts two points and converts the difference from mercator to XY.
If the mercator contains a latitude with magnitude > 90 degrees,
[projection latLongToPoint:latLongBounds] returns nan. My patch fixes this
by converting the two points separately and subtracting the resulting points.
Original issue reported on code.google.com by [email protected]
on 8 Jan 2009 at 9:19
Attachments:
Code correctness issue here that is going to cause a reference counting
problem.
The case where initWithSource: is called with an RMCachedTileSource
class is intended to cause the sender to release.
In the case below, -dealloc; is being called directly. This has four major
errors as a result.
(1) the superclass is going to enter dealloc before ever entering init. If
the code is encapsulated, it is possible that the superclass will attempt
to free unallocated memory as a result. dealloc is not supposed to be
entered without init being entered first. Subclass does not know what super
is doing so subclass has to obey the rules.
(2) dealloc is being entered into in self without init ever being entered.
While this is within scope for encapsulation, it is still erroneous and
could cause an issue down the line.
(3) reference count is bad exiting this method. Since +alloc; has created
this object and incremented its reference count, calling -dealloc; directly
is skipping over the inverse reference count. What happens then is that
this object will attempt to deallocate memory it never allocated, and then
this object will leak.
(4) After leaking, this object returns the passed in argument in place of
itself. The object passed in has a retain count that balances its release
count in its previous role. It may now be exiting in place of an allocated
object, an object which should have a +1 to the retain count due to alloc.
Therefore the recipient down the road in the new role will be expecting to
have one extra release to balance the alloc; Since this object was already
balanced in its previous role, the new role will be out of balance
generating the possibility of an extra release. If this is being balanced
by using the dealloc direct call, it's probably bad news.
The suggestion here is to clean up the allocation and deallocation issues,
follow the reference counting standard, as it will guarantee correctness
and minimize the chance of funky heisenbug type behavior and/or memory leaks.
Corrected code in this case would be to initialize super, check for failure
there first, and return nil if failed. Continuing pass to the second case,
checking for equivalency to the given superclass, if so, [self release]
should be called to decrement the reference count and fix the leak. The
returned object should have a reference count added to it and then returned.
I'm a bit uneasy about the second part, and hoping that it isn't
programming by side effect somehow...
- (id) initWithSource: (id<RMTileSource>) _source
{
if ([_source isKindOfClass:[RMCachedTileSource class]])
{
[self dealloc];
return _source;
}
if (![super init])
return nil;
tileSource = [_source retain];
cache = [[RMTileCache alloc] initWithTileSource:tileSource];
return self;
}
Original issue reported on code.google.com by [email protected]
on 29 Jan 2009 at 3:52
As new tiles are added to the database, the database never shrinks.
Tiles cached in the database should be timestamped so old tile images can
be tossed as appropriate.
Original issue reported on code.google.com by [email protected]
on 27 Oct 2008 at 2:46
First of all, thanks for your great job. it helps me so much. I just want
to ask you when do you plan to implement google maps map source? that
will be nicer.:)
Original issue reported on code.google.com by [email protected]
on 24 Feb 2009 at 1:49
What steps will reproduce the problem?
Pan right around the earth when there's a marker on the map.
What is the expected output? What do you see instead?
Markers disappear. [overlay correctPositionOfAllSublayers] should be called
when the map wraps around.
Original issue reported on code.google.com by [email protected]
on 20 Nov 2008 at 2:43
What steps will reproduce the problem?
1. Zoom all the way out
What is the expected output? What do you see instead?
Expect the map to work correctly, or to disallow the user from zooming out
that far. Instead the user is allowed, and the map breaks its mind.
Original issue reported on code.google.com by [email protected]
on 18 Sep 2008 at 2:07
Bad code in RMMarker. If someone attempts to replace the image it nulls out
the labelView without deallocating it and removing it from the superlayer.
This is bad from two points of view.
1. someone might want to on a click change the image of the marker from red
to blue or vice versa, they may not want the label to be destroyed on a
click so the assumption that the label should go away is a bad one.
2. the label is not actually going away as intended by the code, the label
stays around permanently because the reference to the label is lost by the
marker when the image is changed.
The corrected code would simply not modify the label variable.
- (void) replaceImage:(CGImageRef)image anchorPoint:(CGPoint)_anchorPoint
{
self.contents = (id)image;
self.bounds = CGRectMake(0, 0, CGImageGetWidth(image),
CGImageGetHeight(image));
self.anchorPoint = _anchorPoint;
self.masksToBounds = NO;
labelView = nil; /// <<<<----- cut this line, bug
}
Original issue reported on code.google.com by db%[email protected]
on 7 Feb 2009 at 11:22
What steps will reproduce the problem?
1. Pan the map display around, and note the edges of the tiles as they are
brought over from the network.
2. Occasionally a tile's right edge will have a black line (1 pixel wide)
3. This only happens on the device (iPod 2.0 and iPhone 2.1 firmware). It
is not producible on simulator.
What is the expected output? What do you see instead?
No tiles should have a black edge.
What version of the product are you using? On what operating system?
Reproducible as of r76
Original issue reported on code.google.com by [email protected]
on 3 Nov 2008 at 5:31
The method is coded incorrectly. It passes in
-(NSInteger)expectedContentLength; directly into NSMutableData's
-initWithCapacity: method.
The first method can return -1 based on the server that is being accessed
and whether or not it returned a content length header. If no header is
present, the return value is as per the documents:
Return Value
The receiver’s expected content length, or NSURLResponseUnknownLength if
the length can’t be determined.
This constant is -1. When passed into the initWithCapacity: method this
causes an NSInvalidArgumentException to be raised, and the application crashes.
Here is the corrected code:
- (void)connection:(NSURLConnection *)_connection
didReceiveResponse:(NSURLResponse *)response
{
if (data != nil)
[data release];
NSInteger contentLength = [response expectedContentLength];
if (contentLength < 0) {
contentLength = 0;
}
data = [[NSMutableData alloc] initWithCapacity:contentLength];
}
Original issue reported on code.google.com by db%[email protected]
on 30 Jan 2009 at 2:02
This code is incorrect:
@property (readwrite, assign) UIColor *lineColor;
- (void) setLineColor: (UIColor*) newLineColor
{
lineColor = newLineColor;
[self setNeedsDisplay];
}
Color objects are not static objects, they need to be retained and released
like any others. The standards, like blackColor and redColor that are being
used here by default may be internally retained because of frequent use
externally, but there is no guarantee that any given color object is going
to exist beyond the scope of this call if a custom color is created.
The property needs to be changed to retain, and the methods need to retain
the incoming object and release the outgoing object.
Original issue reported on code.google.com by db%[email protected]
on 19 Feb 2009 at 11:29
Currently there is no attribution overlay for any of the tile sources. This
is a problem for implementers.
In RMMapContents setTileSource: the new tilesource should be asked for an
(optional) overlay to add to the map overlay. This overlay could contain
copyright information, attribution, etc.
Simple change; but important.
Original issue reported on code.google.com by [email protected]
on 20 Nov 2008 at 2:35
What steps will reproduce the problem?
execute this code:
RMMapView* mapview = [[RMMapView alloc] initWithFrame:CGRectMake(0,0,320,640)];
[mapview release];
What is the expected output? What do you see instead?
the RMMapView should be released, freeing any used resources.
Instead, the application crashes in objc_msgSend during the dealloc.
Original issue reported on code.google.com by [email protected]
on 20 Nov 2008 at 6:27
What steps will reproduce the problem?
1. NA
What is the expected output? What do you see instead?
latLongToPixel should give you the pixel coordinates of the map component
given a latLng coordinate.
pixelToLatlong should give you the latLng coordinates of the map given the
pixel coordinates of the map component.
zoomToFit should center and zoom the map around a collection of potential
marker/LatLng objects. (this can alternately be implemented by zooming to
fit a minimum boundary defined by NE/SW LatLng coordinates).
setZoom should set the corresponding zoom level of the map to a supplied
integer value.
isLoaded() should return a boolean indicating the state of the map
(Potential addOverlay() methods in the future may need to check the init
state of the map before plotting overlays).
What version of the product are you using? On what operating system?
RouteMe 0.8
Device - iPhone OS 2.0
Please provide any additional information below.
Great component. Thanks for all of your hard work so far.
Original issue reported on code.google.com by [email protected]
on 19 Sep 2008 at 10:49
Pan the map without releasing your finger. If you leave the loaded bounds,
you see through the view.
This behaviour is incorrect - instead you should see loading images.
Original issue reported on code.google.com by [email protected]
on 18 Sep 2008 at 6:01
What steps will reproduce the problem?
1. Let the map load
2. Zoom the map
3. Release your fingers
The map replaces tiles with the loading image
It should store them until the new tile images are loaded.
Original issue reported on code.google.com by [email protected]
on 18 Sep 2008 at 6:00
The gcc option "-Wuninitialized" along with "-O" can be used to catch
these. Not sure offhand if you have it on. In this case latlong is an
undefined value and is being passed into the initialization routine, which
could possibly cause the map in some conditions to initialize to a random
location or a very bad location.
Correcting this should be latlong = { 0, 0}; as in awakeFromNib;
- (id)initWithFrame:(CGRect)frame
{
CLLocationCoordinate2D latlong;
if (self = [super initWithFrame:frame]) {
[self initValues:latlong];
}
return self;
}
Original issue reported on code.google.com by [email protected]
on 29 Jan 2009 at 3:57
Double-tapping the screen should zoom in to the next native zoom resolution
like the inbuilt google maps app.
Original issue reported on code.google.com by [email protected]
on 13 Oct 2008 at 3:39
What steps will reproduce the problem?
1. Create a Map View
2. Add a marker that is just outside the left screen border (for the default
start position, an example
would be latlng[-33.946, 151.23] )
What is the expected output? What do you see instead?
The marker should not be visible.
At the moment, it is displayed on the map. The position is "mirrored" at the
left screen border.
Original issue reported on code.google.com by [email protected]
on 31 Oct 2008 at 11:22
What steps will reproduce the problem?
1. create a subclass of RMMarker
2. put it on a map
3. tap on it... you will never get any events
What is the expected output? What do you see instead?
... You should get events.
Here is the bad code in - (void)touchesEnded:(NSSet *)touches
withEvent:(UIEvent *)event or RMMapView:
if ([hit isMemberOfClass: [RMMarker class]]) {
This code restricts any marker hits to pure members of the RMMarker class.
There is no reason to do this, subclassing is part of Object Oriented
programming and people will be subclassing markers to extend functionality
and fix bugs (as I am in both domains).
The correct code would be:
if ([hit isKindOfClass: [RMMarker class]]) {
Which allows for full inheritance from RMMarker to be included in
dispatched delegate notifications in regards to markers on the map.
What version of the product are you using? On what operating system?
..
Please provide any additional information below.
Original issue reported on code.google.com by db%[email protected]
on 7 Feb 2009 at 10:46
What steps will reproduce the problem?
1. Have a few markers clustered close together on the map
2. Tap on one of them, either the tap doesn't fire, or it fires on the
wrong marker.
What version of the product are you using? On what operating system?
rev 163. This defect has been around for at least a month.
Original issue reported on code.google.com by [email protected]
on 13 Dec 2008 at 8:08
I saw that RMPath had an unused BOOL instance variable named
scaleLineWidth. I implemented a property that sets this value and wrote
code to draw the line appropriately based on this property. When
scaleLineWidth is NO, lineWidth is in units of screen pixels.
I am attaching both source files and a patch.
Original issue reported on code.google.com by [email protected]
on 5 Jan 2009 at 4:06
Attachments:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.