The exception says:

An exception occurred in FDO component.
Unsupported spatial operation

After that I checked the Capability of Autodesk Oracle provide and It doesn't have support for spatial operation "Within".
Now, I'm trying "Interserct" operation wich is supported by this provider.

Thanks,
Luiz Marcio

----- Original Message ----- From: "Luiz Marcio Viana" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Friday, December 28, 2007 2:39 PM
Subject: [mapguide-users] Problem with SelectFeature with CurvePolygon


Hi,

I'm trying to make a spatial filter using a curve polygon formed by two
semi-arcs (circular region).

But when I execute the SelectFeature method I get the following exception

- MgFeatureServiceHandler.ProcessOperation line 83 file c:\build_bond_area\bond_nightly\build_41.3\ent\os\server\src\services\feature\FeatureServiceHandler.cpp - MgOpSelectFeatures.Execute line 112 file c:\build_bond_area\bond_nightly\build_41.3\ent\os\server\src\services\feature\OpSelectFeatures.cpp - MgServerSelectFeatures.SelectFeatures line 243 file c:\build_bond_area\bond_nightly\build_41.3\ent\os\server\src\services\feature\ServerSelectFeatures.cpp

and I don't know if the problem is with the polygon, spatial operation or comand execution.

The query is executing over an Oracle feature source using the Autodesk Oracle Provider (3.2.2). I'm send the piece of code wich is generating the exception, the exception are occouring at SelectFeature function.

If anyone has any idea about what's wrong here I'm accepting sugestions.

MgGeometryFactory geomFactory = new MgGeometryFactory();
MgCurveSegmentCollection segments = new MgCurveSegmentCollection();

MgCoordinate start =
 geomFactory.CreateCoordinateXY(xcenter - radius, ycenter);
MgCoordinate control =
 geomFactory.CreateCoordinateXY(xcenter, ycenter + radius);
MgCoordinate end =
 geomFactory.CreateCoordinateXY(xcenter + radius, ycenter);
segments.Add(geomFactory.CreateArcSegment(start, end, control));

start = geomFactory.CreateCoordinateXY(xcenter + radius, ycenter);
control = geomFactory.CreateCoordinateXY(xcenter, ycenter - radius);
end = geomFactory.CreateCoordinateXY(xcenter - radius, ycenter);
segments.Add(geomFactory.CreateArcSegment(start, end, control));

MgCurveRing exteriorCurveRing = geomFactory.CreateCurveRing(segments);
MgCurveRingCollection curveRingCollection = new MgCurveRingCollection();
MgGeometry geom =
 geomFactory.CreateCurvePolygon(exteriorCurveRing, curveRingCollection);

MgFeatureQueryOptions query = new MgFeatureQueryOptions();
query.SetSpatialFilter("Geometry", geom, MgFeatureSpatialOperations.Within);

MgResourceIdentifier resId = new
MgResourceIdentifier("Library://Samples/ORACLEDB.FeatureSource");
MgFeatureReader featureReader =
   featureService.SelectFeatures(resId, "My_Schema:My_ClassName", query);

Thanks,
Luiz Marcio


_______________________________________________
mapguide-users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/mapguide-users



_______________________________________________
mapguide-users mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/mapguide-users

Reply via email to