Im Teil 2 über Userdefined InfoWindows möchte ich meinen Lösungsvorschlag zu Detail Maps, auch Nested Maps genannt, vorstellen (Demo-Video) :
In der 'Master Map', wird wie im Teil 1 beschrieben, die Mouseclickposition in dem IFRAME - InfoWindow an die Detail Map übergeben:
In der Detail Map werden die Parameter aus der URL separiert und der übergebene Masterpoint als Home Marker gesetzt:
In der Detail Map kann in den speziellen FOI's navigiert werden: Natürlich läßt sich auch das Userdefined InfoWindow aus Teil 1 aufrufen ..
In diesem Demo wird ebenfalls der Zugriff auf die PL/SQL-DAD 'mvdemo' vorausgesetzt, die Programme stehen hier zum Download bereit.
Die kleine Serie soll zeigen, dass man mit geringem Aufwand (JavaScript und PL/SQL) Userdefined InfoWindows recht effektvoll mit IFRAMES einsetzen kann.
Viel Erfolg,
Friedhold
Donnerstag, 3. Januar 2008
Detail Maps im Userdefined InfoWindow von Oracle Maps (2)
Eingestellt von Friedhold Matz um 15:04 0 Kommentare
Labels: Oracle Maps
Mittwoch, 2. Januar 2008
Userdefined InfoWindows mit IFRAME in Oracle Maps (1)
In Oracle Maps können Info Windows entsprechender 'Features of Interest' - FOI's entweder mittels Mapbuilder statisch oder per XML-RPC im clientseitigen JavaScript dynamisch zugeordnet werden. Benötigt man bei mehrfach überdeckenden FOI-Layern jedoch Informationen, die sich z.B. auf die Basemap beziehen, kann der nachfolgend dargestellte Lösungsvorschlag (Demo-Video) weiterhelfen.
Voraussetzung zum Nachvollziehen sind die Oracle Maps Demos und der zuvor eingerichtete PL/SQL-DAD Zugriff auf das Schema 'mvdemo'.
Hierfür habe ich das unter:
%OC4J_HOME%\j2ee\home\applications\mapviewer\web\fsmc\tutorial\samples befindliche Demo: themeBasedFOIVisible.html in: themeBasedFOIVisibleIframe.html kopiert und folgende Änderungen eingefügt:
1.) Aktivierung des rechten Mouseclicks in der Hauptfunktion:
..
mapview.addEventListener("mouse_right_click", mouseclickright);
..
2.) Rechte Mouseclick-Function inkl. IFRAME - Aufbau:
In der JavaSript-Function wird die x/y-Location des rechten Mouseclicks an die PL/SQL-DAD Procedure mvdemo.show_info(p_x, p_y) übergeben.
Dort wird zunächst anhand der Punktkoordinaten die zugehörige Geometry gesucht -
Function: pkg_geo_mvdemo.fnc_get_fip:
Aus der Tabelle COUNTIES wird die Geometry-ID aus FIPSSTCO ermittelt und es werden in der Procedure show_county ausserdem falsche Punktkoordinaten erkannt.
- Ungültige Punktkoordinate - im Pazifik gibt es natürlich kein County :
- So sieht das Userdefined InfoWindow mit IFRAME letztendlich aus:
Die Programme stehen zum Download bereit.
Viel Spaß dabei,
Friedhold
Eingestellt von Friedhold Matz um 19:11 0 Kommentare
Labels: Oracle Maps
Einrichtung eines PL/SQL - DAD für das Schema mvdemo
Seit der Einführung der Oracle HTMLDB u. APEX wird die Web-Konfigurationsseite zum Einrichten anwenderdefinierter PL/SQL-DAD's nicht mehr angeboten, so dass die hier beschriebene, manuelle Einrichtung notwendig ist. Als Datenbankschema verwenden wir das 'mvdemo', da wir uns in Folgebeiträgen hierauf beziehen werden.
Im Verzeichnis %APEX_HOME%\Apache\modplsql\conf wird die DAD-Definition in die dads.conf eingetragen:
Danach wird der Apache neu gestartet und ein kleine Test-Procedure im Schema 'mvdemo' gespeichert:
Entsprechend der 'Location' in der DAD-Definition ist der URL-Path vorgegeben und wir testen den PL/SQL-DAD Zugriff:
Der Konfigurationseintrag und das Testprogramm sind hier zu finden.
Friedhold
Eingestellt von Friedhold Matz um 11:33 0 Kommentare
Labels: Oracle Maps, Oracle PL/SQL