diff --git a/cmake_templates/qgsconfig.h.in b/cmake_templates/qgsconfig.h.in index 14cbf0a9ccd4..1e368305b72f 100644 --- a/cmake_templates/qgsconfig.h.in +++ b/cmake_templates/qgsconfig.h.in @@ -32,6 +32,9 @@ //used by Mac to find system Qt plugins when bundle is run from build directory #define QTPLUGINSDIR "${QT_PLUGINS_DIR}" +//used by Mac to find system Open Scene Graph plugins when bundle is run from build directory +#define OSG_PLUGINS_PATH "${OSG_PLUGINS_PATH}" + #cmakedefine USING_NMAKE #cmakedefine HAVE_POSTGRESQL diff --git a/doc/TRANSLATORS b/doc/TRANSLATORS index bba34f19f8d4..7f3bcc930bbc 100755 --- a/doc/TRANSLATORS +++ b/doc/TRANSLATORS @@ -1,58 +1,58 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
LanguageFinished %Translators
German
99.2
Jürgen E. Fischer, Stephan Holl, Otto Dassau, Werner Macho
Finnish
97.9
Kari Salovaara, Marko Järvenpää
Italian
96.5
Roberto Angeletti, Michele Beneventi, Marco Braida, Stefano Campus, Luca Casagrande, Paolo Cavallini, Giuliano Curti, Luca Delucchi, Alessandro Fanna, Michele Ferretti, Matteo Ghetta, Anne Gishla, Maurizio Napolitano, Flavio Rigolon
Galician
96.4
Xan Vieiro
Danish (Denmark)
96.4
Jacob Overgaard Madsen, Preben Lisby
Japanese
96.4
BABA Yoshihiko, Yoichi Kayama, Minoru Akagi, Takayuki Nuimura, Takayuki Mizutani, Norihiro Yamate
Korean (Korea, Republic of)
96.3
OSGeo Korean Chapter
Spanish
96.2
Carlos Dávila, Javier César Aldariz, Gabriela Awad, Edwin Amado, Mayeul Kauffmann, Diana Galindo
Russian
96.0
Artem Popov
Dutch
95.7
Richard Duivenvoorde, Raymond Nijssen, Carlo van Rijswijk, Diethard Jansen, Willem Hoffmans
Portuguese (Brazil)
95.2
Arthur Nanni
Basque
95.2
Asier Sarasua Garmendia, Irantzu Alvarez
Polish (Poland)
94.4
Robert Szczepanek, Milena Nowotarska, Borys Jurgiel, Mateusz Łoskot, Tomasz Paul, Andrzej Świąder
Chinese (China)
94.3
Calvin Ngei, Zhang Jun, Richard Xie
Portuguese (Portugal)
93.2
Giovanni Manghi, Joana Simões, Duarte Carreira, Alexandre Neto, Pedro Pereira, Pedro Palheiro, Nelson Silva, Ricardo Sena, Leandro Infantini
Hungarian
93.1
Zoltan Siki
French
92.1
Eve Rousseau, Marc Monnerat, Lionel Roubeyrie, Jean Roc Morreale, Benjamin Bohard, Jeremy Garniaux, Yves Jacolin, Benjamin Lerre, Stéphane Morel, Marie Silvestre, Tahir Tamba, Xavier M, Mayeul Kauffmann, Mehdi Semchaoui, Robin Cura, Etienne Tourigny, Mathieu Bossaert
Swedish
90.5
Lars Luthman, Magnus Homann, Victor Axbom
Czech (Czech Republic)
87.2
Martin Landa, Peter Antolik, Martin Dzurov, Jan Helebrant
Bosnian (Bosnia and Herzegovina)
85.7
Almir Karabegovic
Slovenian (Slovenia)
78.0
Jože Detečnik, Dejan Gregor, Jaka Kranjc
Indonesian
75.1
Trias Aditya, Januar V. Simarmata, I Made Anombawa
Estonian (Estonia)
68.6
Veiko Viil
Slovak
64.4
Lubos Balazovic, Jana Kormanikova, Ivan Mincik
Bokmal, Norwegian (Norway)
56.3
James Stott
Latvian
53.4
Maris Nartiss, Pēteris Brūns
Serbian (latin)
53.0
Goran Ivanković
Serbian (cyrillic)
52.7
Goran Ivanković
Croatian (Croatia)
50.9
Zoran Jankovic
Central Khmer
50.3
Khoem Sokhem
Lithuanian
49.1
Tomas Straupis, Kestas M
Chinese (Taiwan, Province of China)
42.6
Nung-yao Lin
Romanian
40.6
Lonut Losifescu-Enescu, Bogdan Pacurar
Thai
40.2
Man Chao
Ukrainian
37.8
Сергей Якунин
Turkish
36.5
Osman Yilmaz
Vietnamese
31.2
Phan Anh, Bùi Hữu Mạnh
Persian
30.8
Mola Pahnadayan, Masoud Pashotan , Masoud Erfanyan
Modern Greek (1453-) (Greece)
29.2
Evripidis Argyropoulos, Mike Pegnigiannis, Nikos Ves
Icelandic
27.9
Thordur Ivarsson
Mongolian
27.2
Bayarmaa Enkhtur
Georgian (Georgia)
19.0
Shota Murtskhvaladze, George Machitidze
Bulgarian
16.5
Захари Савов, Jordan Tzvetkov
Albanian (Albania)
14.7
(orphaned)
Lao
13.2
Anousak Souphavanh, Soukanh Lathsavong
Malayalam (India)
4.0
Vinayan Parameswaran
Arabic
1.7
Assem Kamal, Latif Jalil
Afrikaans
1.7
Hendrik Bosman
Hebrew
0.1
(orphaned)
Catalan (Spain)
0.1
Xavier Roijals
Bengali
0.0
(orphaned)
Hindi
0.0
(orphaned)
Marathi
0.0
(orphaned)
Swahili (macrolanguage)
0.0
Yohana Mapala
Tamil
0.0
(orphaned)
Xhosa
0.0
(orphaned)
+German
99.2
Jürgen E. Fischer, Stephan Holl, Otto Dassau, Werner Macho +Finnish
97.7
Kari Salovaara, Marko Järvenpää +Italian
96.2
Roberto Angeletti, Michele Beneventi, Marco Braida, Stefano Campus, Luca Casagrande, Paolo Cavallini, Giuliano Curti, Luca Delucchi, Alessandro Fanna, Michele Ferretti, Matteo Ghetta, Anne Gishla, Maurizio Napolitano, Flavio Rigolon +Galician
96.1
Xan Vieiro +Danish (Denmark)
96.1
Jacob Overgaard Madsen, Preben Lisby +Japanese
96.1
BABA Yoshihiko, Yoichi Kayama, Minoru Akagi, Takayuki Nuimura, Takayuki Mizutani, Norihiro Yamate +Korean (Korea, Republic of)
96.1
OSGeo Korean Chapter +Spanish
95.9
Carlos Dávila, Javier César Aldariz, Gabriela Awad, Edwin Amado, Mayeul Kauffmann, Diana Galindo +Russian
95.7
Artem Popov +Dutch
95.4
Richard Duivenvoorde, Raymond Nijssen, Carlo van Rijswijk, Diethard Jansen, Willem Hoffmans +Portuguese (Brazil)
95.0
Arthur Nanni +Basque
94.9
Asier Sarasua Garmendia, Irantzu Alvarez +Polish (Poland)
94.1
Robert Szczepanek, Milena Nowotarska, Borys Jurgiel, Mateusz Łoskot, Tomasz Paul, Andrzej Świąder +Chinese (China)
94.1
Calvin Ngei, Zhang Jun, Richard Xie +Portuguese (Portugal)
93.0
Giovanni Manghi, Joana Simões, Duarte Carreira, Alexandre Neto, Pedro Pereira, Pedro Palheiro, Nelson Silva, Ricardo Sena, Leandro Infantini +Hungarian
92.8
Zoltan Siki +French
91.8
Eve Rousseau, Marc Monnerat, Lionel Roubeyrie, Jean Roc Morreale, Benjamin Bohard, Jeremy Garniaux, Yves Jacolin, Benjamin Lerre, Stéphane Morel, Marie Silvestre, Tahir Tamba, Xavier M, Mayeul Kauffmann, Mehdi Semchaoui, Robin Cura, Etienne Tourigny, Mathieu Bossaert +Swedish
90.2
Lars Luthman, Magnus Homann, Victor Axbom +Czech (Czech Republic)
87.0
Martin Landa, Peter Antolik, Martin Dzurov, Jan Helebrant +Bosnian (Bosnia and Herzegovina)
85.5
Almir Karabegovic +Slovenian (Slovenia)
77.8
Jože Detečnik, Dejan Gregor, Jaka Kranjc +Indonesian
74.9
Trias Aditya, Januar V. Simarmata, I Made Anombawa +Estonian (Estonia)
68.4
Veiko Viil +Slovak
64.3
Lubos Balazovic, Jana Kormanikova, Ivan Mincik +Bokmal, Norwegian (Norway)
56.1
James Stott +Latvian
53.3
Maris Nartiss, Pēteris Brūns +Serbian (latin)
52.8
Goran Ivanković +Serbian (cyrillic)
52.5
Goran Ivanković +Croatian (Croatia)
50.8
Zoran Jankovic +Central Khmer
50.2
Khoem Sokhem +Lithuanian
49.0
Tomas Straupis, Kestas M +Chinese (Taiwan, Province of China)
42.5
Nung-yao Lin +Romanian
40.4
Lonut Losifescu-Enescu, Bogdan Pacurar +Thai
40.1
Man Chao +Ukrainian
37.7
Сергей Якунин +Turkish
36.4
Osman Yilmaz +Vietnamese
31.1
Phan Anh, Bùi Hữu Mạnh +Persian
30.8
Mola Pahnadayan, Masoud Pashotan , Masoud Erfanyan +Modern Greek (1453-) (Greece)
29.2
Evripidis Argyropoulos, Mike Pegnigiannis, Nikos Ves +Icelandic
27.8
Thordur Ivarsson +Mongolian
27.1
Bayarmaa Enkhtur +Georgian (Georgia)
18.9
Shota Murtskhvaladze, George Machitidze +Bulgarian
16.4
Захари Савов, Jordan Tzvetkov +Albanian (Albania)
14.7
(orphaned) +Lao
13.2
Anousak Souphavanh, Soukanh Lathsavong +Hindi
5.0
Harish K. Solanki +Malayalam (India)
3.9
Vinayan Parameswaran +Arabic
1.7
Assem Kamal, Latif Jalil +Afrikaans
1.7
Hendrik Bosman +Hebrew
0.1
(orphaned) +Catalan (Spain)
0.1
Xavier Roijals +Bengali
0.0
(orphaned) +Marathi
0.0
(orphaned) +Swahili (macrolanguage)
0.0
Yohana Mapala +Tamil
0.0
(orphaned) +Xhosa
0.0
(orphaned) diff --git a/i18n/qgis_hi.ts b/i18n/qgis_hi.ts index 13c6f81d406a..5a5d13400063 100644 --- a/i18n/qgis_hi.ts +++ b/i18n/qgis_hi.ts @@ -6,7 +6,7 @@ Generating prepared API file (please wait)... - + तैयार एपीआई फ़ाइल बना रहा है (कृपया प्रतीक्षा करें) ... @@ -14,42 +14,43 @@ <p>Character: <span style="font-size: 24pt; font-family: %1">%2</span><p>Value: 0x%3 - + <p>अक्षर: <span style="font-size: 24pt; font-family: %1">%2</span><p>मान: 0x%3 ConfigDialog Search... - + खोजें... Setting - + समायोजन Value - + मान Providers - + प्रदाता Wrong value - + गलत मान Wrong parameter value: %1 - + गलत मापदंड मान: +%1 ConnectionItem Unable to connect - + जोड़ने में असमर्थ @@ -58,609 +59,614 @@ Coordinate Capture - + निर्देशांक प्राप्ति Click on the map to view coordinates and capture to clipboard. - + निर्देशांक देखने और क्लिपबोर्ड पर लेने के लिए मैप पर क्लिक करें. &Coordinate Capture - + &निर्देशांक प्राप्ति Click to select the CRS to use for coordinate display - + निर्देशांकों में देखने के लिए निर्देशांक संदर्भ प्रणाली चयन करें (क्लिक करें) Coordinate in your selected CRS (lat,lon or east,north) - + आपके चयनित निर्देशांक संदर्भ प्रणाली में निर्देशांक (अक्षांश, देशांतर या पूर्व, उत्तर) Coordinate in map canvas coordinate reference system (lat,lon or east,north) - + मैप कैनवास के निर्देशांक संदर्भ प्रणाली में निर्देशांक (अक्षांश, देशांतर या पूर्व, उत्तर) Copy to clipboard - + क्लिपबोर्ड में कॉपी Click to enable mouse tracking. Click the canvas to stop - + माउस ट्रैकिंग को चलायमान करने के लिए क्लिक करें. रोकने के लिए कैनवास पर क्लिक करें Start capture - + निर्देशांक लेना प्रारंभ करें Click to enable coordinate capture - + निर्देशांक लेने के लिए क्लिक करें DBManager Sorry - + क्षमा करें No database selected or you are not connected to it. - + कोई डेटाबेस का चयन नहीं किया है या आप इससे जुड़े नहीं हैं. Select the table you want export to file. - + फाइल बनाने हेतु टेबल चयन करें. DB Manager - + डेटाबेस प्रबंधक Info - + जानकारी Table - + टेबल Preview - + पूर्वदर्शन &Database - + &डेटाबेस &Schema - + &रूपरेखा &Table - + &टेबल &Refresh - + &ताज़ा करें &SQL window - + &SQL विंडो &Exit - + &बाहर निकलें &Import layer/file - + &लेयर/ फाइल लावें &Export to file - + &नयी फाइल बनावें DBManagerPlugin Copy - + कॉपी करें Relation type: - + संबंध का प्रकार: View - + दर्शन Table - + टेबल Owner: - + मालिक: Comment: - + टिप्पणी: Pages: - + पेज: Rows (estimation): - + पंक्तियाँ (आंकलन): Privileges: - + विशेषाधिकार: <warning> This user doesn't have usage privileges for this schema! - + <warning> यह उपयोगकर्ता इस रूपरेखा के लिए विशेषाधिकार प्राप्त नहीं है! Rows (counted): - + पंक्तियाँ (गिनी हुई): Unknown (<a href="action:rows/count">find out</a>) - + अज्ञात (<a href="action:rows/count"> पता लगाना </ a>) <warning> This user has no privileges! - + <warning> इस उपयोगकर्ता का कोई विशेषाधिकार नही है! <warning> This user has read-only privileges. - + <warning> इस उपयोगकर्ता को केवल पढ़ने के विशेषाधिकार है. <warning> There's a significant difference between estimated and real row count. Consider running <a href="action:vacuumanalyze/run">VACUUM ANALYZE</a>. - + <warning> अनुमानित और वास्तविक पंक्ति की गिनती के बीच एक महत्वपूर्ण अंतर है! चलाने पर विचार करें <a href="action:vacuumanalyze/run">VACUUM ANALYZE</a>. <warning> No primary key defined for this table! - + <warning> इस टेबल के लिए कोई परिभाषित प्राथमिक कुंजी नहीं है! Library: - + पुस्तकालय: Scripts: - + स्क्रिप्ट: <warning> Version of installed scripts doesn't match version of released scripts! This is probably a result of incorrect PostGIS upgrade. - + <warning> स्थापित स्क्रिप्ट का संस्करण स्क्रिप्ट के जारी संस्करण से मेल नहीं खाता! यह शायद PostGIS के गलत अपग्रेड का परिणाम है. <warning> geometry_columns table doesn't exist! This table is essential for many GIS applications for enumeration of tables. - + <warning> geometry_columns टेबल मौजूद नहीं है! यह टेबल कई टेबलों को गणनाओं के GIS प्रयोगों हेतु आवश्यक है. <warning> This user doesn't have privileges to read contents of geometry_columns table! This table is essential for many GIS applications for enumeration of tables. - + <warning> इस उपयोगकर्ता को ज्यामिति_कॉलम टेबल की सामग्री को पढ़ने के लिए विशेषाधिकार प्राप्त नहीं है! + यह टेबल कई टेबलों को गणनाओं के GIS प्रयोगों हेतु आवश्यक है. Name - + नाम Type - + प्रकार Length - + लंबाई Null - + रिक्त Default - + स्वतः Function - + कार्य Enabled - + सक्रिय Yes - + हाँ No - + नहीं <a href="action:triggers/enable">Enable all triggers</a> / <a href="action:triggers/disable">Disable all triggers</a> - + <a href="action:triggers/enable">सभी ट्रिगर को सक्रिय करें</a> / <a href="action:triggers/disable">सभी ट्रिगर को अक्षम करें</a> Definition - + परिभाषा Rules - + नियम &Versioning - + &संस्करण &Table - + &टेबल "{0}" not found - + "{0}" नहीं मिला Filename: - + फाइल का नाम: SQLite version: - + SQLite संस्करण: Server version: - + सर्वर संस्करण: Host: - + मेजबान: User: - + उपभोक्ता: create new schemas - + नयी रूपरेखा की रचना करें create temporary tables - + अस्थायी टेबल बनावें Not connected - + जुड़ा हुआ नहीं है Connection details - + संपर्क विवरण General info - + सामान्य जानकारी <warning> %s support not enabled! - + <warning>% s समर्थन सक्षम नहीं! User has privileges: - + उपयोगकर्ता का विशेषाधिकार है: Privileges - + विशेषाधिकार create new objects - + नये ऑब्जेक्ट बनावें access objects - + ऑब्जेक्ट तक पहुँचे Schema details - + रूपरेखा विवरण <warning> This user has no privileges to access this schema! - + <warning> यह उपयोगकर्ता इस रूपरेखा का उपयोग करने के लिए कोई विशेषाधिकार प्राप्त नहीं है! Rows: - + पंक्तियां: Column(s) - + स्तम्भ <warning> This is not a spatial table. - + <warning> यह एक भौगोलिक टेबल नहीं है. Fields - + स्तम्म Constraints - + अवरोध Indexes - + अनुक्रमणिकाएँ Triggers - + ट्रिगर View definition - + परिभाषा देखें Column: - + स्तंभ: Geometry: - + ज्यामिति: Dimension: - + आयाम: Undefined - + अपरिभाषित Spatial ref: - + भौगोलिक संदर्भ: Estimated extent: - + अनुमानित विस्तार: (unknown) (<a href="action:extent/get">find out</a>) - + (अज्ञात) (<a href="action:extent/get">पता लगावें </ a>) Extent: - + विस्तार: <warning> There isn't entry in geometry_columns! - + <warning> ज्यामिति स्तंभ में प्रविष्टि नहीं है! <warning> No spatial index defined (<a href="action:spatialindex/create">create it</a>) - + <warning> कोई भौगोलिक भौगोलिक अनुक्रमणिका परिभाषित नहीं है!(<a href="action:spatialindex/create"> बनावें </ a>) Error: %s - + गलती: +%s Query: %s - + + +पूछताछ: +%s &Re-connect - + &फिर से जोड़ें &Database - + &डेटाबेस &Create schema - + &रूपरेखा बनावें &Schema - + &रूपरेखा &Delete (empty) schema - + &रूपरेखा(खाली) हटाएँ Delete selected item - + चयनित चीज हटाएँ &Create table - + &टेबल बनावें &Edit table - + &टेबल संशोधित करें &Delete table/view - + &टेबल / व्यू मिटायें &Empty table - + & खाली टेबल &Move to schema - + &रूपरेखा पर ले जाएँ Sorry - + क्षमा करें Cannot delete the selected item. - + चयनित चीज को हटा नहीं सकते. No database selected or you are not connected to it. - + कोई डेटाबेस का चयन नहीं किया है या आप इससे जुड़े नहीं हैं. New schema - + नयी रूपरेखा Enter new schema name - + नयी रूपरेखा का नाम दर्ज करें Select an empty SCHEMA for deletion. - + मिटाने के लिए एक खाली रूपरेखा का चयन करें. hey! - + अरे! Really delete schema %s? - + क्या वास्तव में रूपरेखा को मिटाना चाहते हैं %s? Select a TABLE for editation. - + संशोधन के लिए एक टेबल चुनें. Select a TABLE/VIEW for deletion. - + मिटाने के लिये एक टेबल का चयन करें. Really delete table/view %s? - + क्या वास्तव में टेबल /व्यू को मिटाना चाहते हैं %s? Select a TABLE to empty it. - + इसे खाली करने के लिए एक टेबल चुनें. Really delete all items from table %s? - + क्या वास्तव में टेबल से सभी आइटम को मिटायें %s? Select a TABLE/VIEW. - + एक टेबल / व्यू का चयन करें. Do you want to %s all triggers? - + क्या आप सब ट्रिगरों %s को चाहते हैं? Table triggers - + टेबल के ट्रिगर Do you want to %s trigger %s? - + क्या आप % s ट्रिगर %s है चाहते हैं? Table trigger - + टेबल ट्रिगर Do you want to %s spatial index for field %s? - + क्या आप स्तंभ के लिये % sभौगोलिक अनुक्रम चाहते हैं? Spatial Index - + भौगोलिक अनुक्रमणिका Check - + जाँचें Primary key - + प्राथमिक कुंजी Foreign key - + बाह्य कुंजी Unique - + अद्वितीय Exclusion - + बहिष्कार Unknown - + अज्ञात Unable to find a valid unique field - + एक वैध अद्वितीय स्तंभ पाने में असमर्थ DB Manager - + डेटाबेस प्रबंधक DBModel Databases - + डेटाबेस Invalid layer - + अवैध लेयर Unable to load the layer %s - + लेयर को लोड करने में असमर्थ %s DBTree Rename - + नाम बदलें Delete - + मिटायें Add to canvas - + कैनवास पर लावें Re-connect - + फिर से कनेक्ट करें @@ -668,27 +674,27 @@ Query: Add geometry column - + ज्यामिति स्तंभ जोड़ें Name - + नाम Type - + प्रकार Dimensions - + आयाम SRID - + SRID @@ -696,22 +702,22 @@ Query: Add constraint - + अवरोध जोड़ें Column - + स्तंभ Primary key - + प्राथमिक कुंजी Unique - + अद्वितीय @@ -719,17 +725,17 @@ Query: Create index - + अनुक्रमणिका बनावें Column - + स्तंभ Name - + नाम @@ -737,63 +743,63 @@ Query: Create Table - + टेबल बनावें Schema - + रूपरेखा Name - + नाम Add field - + स्तंभ जोड़ें Delete field - + स्तंभ मिटायें Up - + ऊपर Down - + नीचे Primary key - + प्राथमिक कुंजी Create geometry column - + ज्यामिति स्तंभ बनावें Dimensions - + आयाम SRID - + SRID Create spatial index - + भौगोलिक अनुक्रमणिका बनावें @@ -801,22 +807,22 @@ Query: Database Error - + डेटाबेस गलती An error occured: - + एक गलती हो गई: An error occured when executing a query: - + एक पूछताछ को क्रियान्वित करते समय एक गलती हो गई: Query: - + पूछताछ: @@ -824,57 +830,57 @@ Query: Export to vector file - + वेक्टर फाइल बनावें Output file - + निर्गम फाइल ... - + ... Action - + क्रिया Create new file - + नयी फाइल बनावें Drop existing one - + मौजूदा एक को हटावें Append data to file - + फाइल में डेटा जोड़ें Options - + विकल्प Source SRID - + स्रोत SRID Target SRID - + लक्ष्य SRID Encoding - + संकेतन @@ -882,32 +888,32 @@ Query: Field properties - + स्तंभ के गुण Name - + नाम Type - + प्रकार Can be NULL - + यह रिक्त हो सकता है Default value - + स्वतः मान Length - + लंबाई @@ -915,97 +921,97 @@ Query: Import vector layer - + वेक्टर लेयर लावें Input - + आदान ... - + ... Update options - + नवीनीकरण के विकल्प Output table - + निर्गम टेबल Schema - + रूपरेखा Table - + टेबल Action - + कार्य Create new table - + नयी टेबल बनावें Drop existing one - + मौजूदा एक को हटावें Append data to table - + टेबल में डेटा जोड़ें Options - + विकल्प Primary key - + प्राथमिक कुंजी Geometry column - + ज्यामिति स्तंभ Source SRID - + स्रोत SRID Target SRID - + लक्ष्य SRID Encoding - + संकेतीकरण Create single-part geometries instead of multi-part - + बहुभागीय ज्यामिति के बजाय एक भागीय बनावें Create spatial index - + भौगोलिक अनुक्रमणिका बनावें @@ -1013,99 +1019,99 @@ Query: SQL window - + SQL विंडो SQL query: - + SQL पूछताछ: Store - + संग्रह Delete - + मिटाना &Execute (F5) - + & निष्पादित करें (F5) F5 - + F5 &Clear - + &साफ करें Result: - + परिणाम: Load as new layer - + नई लेयर के रूप में लावें Column with unique integer values - + अद्वितीय पूर्णांक मान के साथ स्तंभ Geometry column - + ज्यामिति स्तंभ Retrieve columns - + स्तंभ पुन: प्राप्त करें Layer name (prefix) - + लेयर नाम (उपसर्ग) Type - + प्रकार Vector - + वेक्टर Raster - + रास्टर Load now! - + अभी लावें! <html><head/><body><p>Avoid selecting feature by id. Sometimes - especially when running expensive queries/views - fetching the data sequentially instead of fetching features by id can be much quicker.</p></body></html> - + <html><head/><body><p> आईडी द्वारा नक्श का चयन करने से बचें. विशेषकर जब भारी पूछताछ/ व्यू चल रही हो, ऐसे में डेटा को एक कें बाद एक लेना आईडी से नक्श चयन करने के मुकबले जल्दी होता हैं। </p></body></html> नक्श आईडी से चयन करने से बचें Avoid selecting by feature id - + नक्श आईडी से चयन करने से बचें @@ -1133,7 +1139,7 @@ columns Add geometry column - + ज्यामिति स्तंभ जोड़ें @@ -1148,7 +1154,7 @@ columns Constraints - + अवरोध @@ -1168,7 +1174,7 @@ columns Indexes - + अनुक्रमणिकाएँ @@ -1350,6 +1356,7 @@ columns Dissolve buffer results + प्रतिरोध परिणाम भंग @@ -1814,7 +1821,7 @@ columns Output table - + निर्गम टेबल @@ -2433,13 +2440,46 @@ were reduced to %d vertices after simplification DlgAddGeometryColumn Sorry - + क्षमा करें field name must not be empty + + DlgAutofill + + + Autofill settings + + + + + Autofill mode + + + + + Do not autofill + + + + + Fill with numbers + + + + + Fill with parameter values + + + + + Parameter to use + + + DlgConfig @@ -2472,7 +2512,7 @@ were reduced to %d vertices after simplification Sorry - + क्षमा करें no field selected @@ -2544,7 +2584,8 @@ were reduced to %d vertices after simplification Error %d %s - + Error %d +%s Export finished. @@ -2555,7 +2596,7 @@ were reduced to %d vertices after simplification DlgFieldProperties Sorry - + क्षमा करें field name must not be empty @@ -2626,7 +2667,8 @@ were reduced to %d vertices after simplification Error %d %s - + Error %d +%s Import was successful. @@ -2653,7 +2695,7 @@ were reduced to %d vertices after simplification ... - + ... @@ -2706,6 +2748,50 @@ were reduced to %d vertices after simplification + + DlgMultipleSelection + + + Multiple selection + + + + + DlgNumberInput + + + Enter number or expression + + + + + <html><head/><body><p>Enter expression in the text field. Double click on elements in the tree to add their values to the expression.</p></body></html> + + + + + <html><head/><body><p><span style=" font-weight:600;">Warning</span>: if expression result is float value, but integer required, result will be rounded to integer.</p></body></html> + + + + + DlgRenderingStyles + + + Dialog + + + + + Output + + + + + Style + + + DlgResults @@ -2742,7 +2828,7 @@ were reduced to %d vertices after simplification ... - + ... @@ -2767,7 +2853,7 @@ were reduced to %d vertices after simplification Copy - + कॉपी करें @@ -2793,7 +2879,7 @@ were reduced to %d vertices after simplification Sorry - + क्षमा करें You must fill the required fields: @@ -2805,7 +2891,7 @@ geometry column - column with unique integer values DlgTableProperties Sorry - + क्षमा करें nothing selected @@ -2859,12 +2945,12 @@ geometry column - column with unique integer values Schema - + रूपरेखा Table - + टेबल @@ -2916,7 +3002,7 @@ geometry column - column with unique integer values FileDirectorySelector ... - + ... Select directory @@ -3526,7 +3612,7 @@ Disable the "Use intersected extent" option to have a nonempty output. Copy - + कॉपी करें Copy all @@ -3586,12 +3672,12 @@ Disable the "Use intersected extent" option to have a nonempty output. Name - + नाम Value - + मान @@ -4182,7 +4268,7 @@ when pressing on the tool dialog's Help button. Info - + जानकारी @@ -4934,42 +5020,42 @@ GEOS geoprocessing error: One or more input features have invalid geometry. GlobePlugin - + Launch Globe - + Globe Settings - + Unload Globe - + Overlay data on a 3D globe - + Settings for 3D globe - + Unload globe - - - - - - + + + + + + &Globe @@ -5091,7 +5177,7 @@ GEOS geoprocessing error: One or more input features have invalid geometry. ... - + ... @@ -5213,6 +5299,14 @@ GEOS geoprocessing error: One or more input features have invalid geometry.Clear history and log + + Confirmation + + + + Are you sure you want to clear log? + + Create test @@ -5226,16 +5320,21 @@ GEOS geoprocessing error: One or more input features have invalid geometry. - + Reload + + + Save + + InfoViewer DB Manager - + डीबी प्रबंधक @@ -5391,7 +5490,7 @@ GEOS geoprocessing error: One or more input features have invalid geometry. Raster - + रेखापुंज @@ -5401,7 +5500,7 @@ GEOS geoprocessing error: One or more input features have invalid geometry. Vector - + वेक्टर @@ -6072,7 +6171,7 @@ GEOS geoprocessing error: One or more input features have invalid geometry. F1 - + F1 @@ -6483,7 +6582,7 @@ Acts on currently active editable layer ModelerDialog Search... - + खोजें... Message @@ -6498,7 +6597,8 @@ Acts on currently active editable layer - Model doesn't contains any algorithms and/or parameters and can't be executed + Model doesn't contains any algorithms and/or + parameters and can't be executed @@ -6539,9 +6639,16 @@ Acts on currently active editable layer - This model can't be saved in its original location -(probably you do not have permission to do it). -Please, use the 'Save as...' option. + This model can't be saved in its + original location (probably you do not + have permission to do it). Please, use + the 'Save as...' option. + + + + The selected model could not be loaded. + + Wrong line: %s @@ -6561,12 +6668,22 @@ Please, use the 'Save as...' option. - The selected model could not be loaded. -Wrong line: %s + Parameters + + + MultipleInputDialog - Parameters + Select all + + + + Clear selection + + + + Toggle selection @@ -6577,6 +6694,77 @@ Wrong line: %s + + NumberInputDialog + + [Enter your formula here] + + + + Values from data layers extents + + + + Min X + + + + Max X + + + + Min Y + + + + Max Y + + + + Cellsize + + + + Values from raster layers statistics + + + + Mean + + + + Std. deviation + + + + Max value + + + + Min value + + + + Values from QGIS map canvas + + + + Current extent + + + + Full extent of all layers in map canvas + + + + Wrong expression + + + + The expression entered is not correct + + + OracleConnectGuiBase @@ -6587,7 +6775,7 @@ Wrong line: %s Name - + नाम @@ -6619,7 +6807,7 @@ Wrong line: %s PGDatabase &Table - + &टेबल Run &Vacuum Analyze @@ -6627,7 +6815,7 @@ Wrong line: %s Sorry - + क्षमा करें Select a TABLE for vacuum analyze. @@ -6711,7 +6899,7 @@ Wrong line: %s Search... - + खोजें... Execute @@ -6833,7 +7021,7 @@ Wrong line: %s Copy - + कॉपी करें Paste @@ -6940,6 +7128,22 @@ Wrong line: %s New Editor + + Close Tab + + + + Close All + + + + Close Others + + + + Save As + + The file {0} could not be opened. Error: {1} @@ -7147,6 +7351,11 @@ Wrong line: %s <unknown> + + + nautical miles + + QOCISpatialDriver @@ -7246,7 +7455,7 @@ Wrong line: %s - + QGIS starting in non-interactive mode not supported. You are seeing this message most likely because you have no DISPLAY environment variable set. @@ -7263,22 +7472,22 @@ You are seeing this message most likely because you have no DISPLAY environment - + minidump written to %1 - + writing of minidump to %1 failed (%2) - + creation of minidump to %1 failed (%2) - + Crash dumped @@ -7322,7 +7531,7 @@ You are seeing this message most likely because you have no DISPLAY environment - + Plugins @@ -7395,7 +7604,7 @@ It will be disabled. Undefined - + अपरिभाषित @@ -7458,7 +7667,7 @@ Error(%2): %3 - + Imported from GDAL @@ -7552,274 +7761,284 @@ Error(%2): %3 + sq. NM + + + + + NM + + + + sq.deg. - + degree - + degrees - + unknown - + day Note: Word is part matched in code - + days Note: Word is part matched in code - + week Note: Word is part matched in code - + weeks Note: Word is part matched in code - + month Note: Word is part matched in code - + months Note: Word is part matched in code - + year Note: Word is part matched in code - + years Note: Word is part matched in code - + second Note: Word is part matched in code - + seconds Note: Word is part matched in code - + minute Note: Word is part matched in code - + minutes Note: Word is part matched in code - + hour Note: Word is part matched in code - + hours Note: Word is part matched in code - + Cannot convert '%1' to double - + Cannot convert '%1' to int - + Cannot convert '%1' to DateTime - + Cannot convert '%1' to Date - + Cannot convert '%1' to Time - + Cannot convert '%1' to Interval - + Cannot convert '%1' to boolean - - + + Domain max must be greater than domain min - + Exponent must be greater than 0 - - - + + + Invalid regular expression '%1': %2 - + Index is out of range - - - + + + Cannot convert '%1:%2:%3' to color - - - - + + + + Cannot convert '%1:%2:%3:%4' to color - + "%1" is not a valid color ramp - + Cannot convert '%1:%2:%3:%4:%5' to color - - + + No root node! Parsing failed? - + (no root) - + Unary minus only for numeric values. - + Can't preform /, *, or % on DateTime and Interval - + [unsupported type;%1; value:%2] - + Column '%1' not found - + function help for %1 missing - + Operators - + Conditionals - + Fields and Values - + Math - + Conversions - + Date and Time - + String - + Color - + Geometry - + Record @@ -7844,13 +8063,13 @@ Error(%2): %3 - - - - - - - + + + + + + + Exception: %1 @@ -7870,19 +8089,19 @@ Error(%2): %3 - - - - - - - - + + + + + + + + GEOS - + GEOS prior to 3.2 doesn't support GEOSInterpolate @@ -7983,7 +8202,7 @@ Error(%2): %3 - + Could not save symbology because: %1 @@ -8024,34 +8243,34 @@ Error(%2): %3 - + No QGIS data provider plugins found in: %1 - + No vector layers can be loaded. Check your QGIS installation - + No Data Providers - + No data provider plugins are available. No vector layers can be loaded - + Failed to load %1: %2 - + Unable to instantiate the data provider plugin %1 @@ -8138,196 +8357,195 @@ Error(%2): %3 - + Failed to transform a point while drawing a feature with ID '%1'. Writing stopped. (Exception: %2) - + Feature write errors: - + Stopping after %1 errors - - + + Only %1 of %2 features written. - + Arc/Info ASCII Coverage - + Atlas BNA - + Comma Separated Value - + ESRI Shapefile - + DBF file - + FMEObjects Gateway - + GeoJSON - + GeoRSS - + Geography Markup Language [GML] - + Generic Mapping Tools [GMT] - + GPS eXchange Format [GPX] - + INTERLIS 1 - + INTERLIS 2 - + Keyhole Markup Language [KML] - + Mapinfo TAB - + Mapinfo MIF - + Microstation DGN - + S-57 Base file - + Spatial Data Transfer Standard [SDTS] - + SQLite - - - - + + + SpatiaLite - + AutoCAD DXF - + Geoconcept - + ESRI FileGDB - + Failed to transform, writing stopped. (Exception: %1) - - - + + + Unable to load %1 provider - - - + + + Provider %1 has no %2 method - + Loaded from Provider @@ -8361,71 +8579,71 @@ Only %1 of %2 features written. - + Reading raster part %1 of %2 - + Building Pyramids... - + Building pyramids failed - write access denied - + Write access denied. Adjust the file permissions and try again. - - - - + + + + Building pyramids failed. - + The file was not writable. Some formats do not support pyramid overviews. Consult the GDAL documentation if in doubt. - - + + Building pyramid overviews is not supported on this type of raster. - + Building internal pyramid overviews is not supported on raster layers with JPEG compression and your current libtiff library. - + Multiband color - + Paletted - + Singleband gray - + Singleband pseudocolor - + Singleband color data @@ -8436,70 +8654,75 @@ Only %1 of %2 features written. - + Single Symbol - + Categorized - + Graduated - + Rule-based - + Point displacement - + Simple line - + Marker line - + Simple marker - + SVG marker - + Font marker - + Ellipse marker - + Vector Field marker - + Simple fill + + + Gradient fill + + SVG fill @@ -8568,7 +8791,7 @@ Only %1 of %2 features written. Coordinate Capture - + निर्देशांक प्राप्ति @@ -8583,12 +8806,12 @@ Only %1 of %2 features written. Vector - + वेक्टर - + @@ -8689,7 +8912,7 @@ Only %1 of %2 features written. Raster - + रेखापुंज @@ -8717,12 +8940,12 @@ Only %1 of %2 features written. - + Globe - + Overlay data on a 3D globe @@ -8935,7 +9158,7 @@ Only %1 of %2 features written. Table - + टेबल @@ -9541,14 +9764,14 @@ Would you like to specify path (GISBASE) to your GRASS installation? - + Unsupported type for field %1 - + Creation of fields failed @@ -9641,7 +9864,6 @@ Would you like to specify path (GISBASE) to your GRASS installation? - PostgreSQL @@ -9718,59 +9940,59 @@ Error: %2 - - + + - + Connection to database failed - + No owner name found - + Creation of data source %1 failed: %2 - + Loading of the layer %1 failed - + Field name clash found (%1 not remappable) - + %1 not owner of the table %2. - + Unable to determine number of geometry columns of layer %1.%2: %3 - + Unable to delete layer %1.%2: %3 - + Unable to clean metadata %1.%2: %3 @@ -9793,12 +10015,6 @@ Database error: %2 PostGIS - - - - Trying to fetch geometry on a layer without geometry. - - @@ -9865,13 +10081,13 @@ Database error: %2 - + SQLite error: %2 SQL: %1 - + SQLite error getting feature: %1 @@ -9891,41 +10107,41 @@ SQL: %1 - + Unable to initialize SpatialMetadata: - + Could not create a new database - + Unable to activate FOREIGN_KEY constraints [%1] - + Unable to delete table %1 - + Unable to delete table %1: - + Error describing bind parameters - + Error binding parameters @@ -9961,7 +10177,7 @@ SQL: %1 - + Python error @@ -10005,25 +10221,65 @@ SQL: %1 - + An error occured during execution of following code: - + Python version: - + QGIS version: - + Python path: + + + linear + + + + + radial + + + + + conical + + + + + feature + + + + + viewport + + + + + pad + + + + + repeat + + + + + reflect + + QSpatiaLiteDriver @@ -10184,794 +10440,799 @@ SQL: %1 - + QGIS - + CRS undefined - defaulting to project CRS - + CRS undefined - defaulting to default CRS: %1 - + Multiple Instances of QgisApp - + Multiple instances of QGIS application object detected. Please contact the developers. - + Checking database - + Private qgis.db - + Reading settings - + Setting up the GUI - + Map canvas. This is where raster and vector layers are displayed when added to the map - + Browser - + Browser (2) - + GPS Information - + Log Messages - + + Relation Reference + + + + QGIS - %1 ('%2') - + QGIS starting... - + Checking provider plugins - + Starting Python - + Restoring loaded plugins - + Initializing file filters - + Restoring window state - - + + QGIS Ready! - + Minimize - + Ctrl+M Minimize Window - + Minimizes the active window to the dock - + Zoom - + Toggles between a predefined size and the window size set by the user - + Bring All to Front - + Bring forward all open windows - + Current Edits - - + + Failed to open Python console: - - - - - - - - + + + + + + + + Error - + Panels - + Toolbars - + Window - + &Database - + &डेटाबेस - + &Web - + Progress bar that displays the status of rendering layers and other time-intensive operations - + Toggle extents and mouse position display - - + + Coordinate: - + Current map coordinate - + Shows the map coordinates at the current cursor position. The display is continuously updated as the mouse is moved. It also allows editing to set the canvas center to a given position. The format is lat,lon or east,north - + Current map coordinate (lat,lon or east,north) - + Scale - + Current map scale - + Displays the current map scale - + Current map scale (formatted as x:y) - + Stop map rendering - + Render - + When checked, the map layers are rendered in response to map navigation commands and other events. When not checked, no rendering is done. This allows you to add a large number of layers and symbolize them before rendering. - + Toggle map rendering - + This icon shows whether on the fly coordinate reference system transformation is enabled or not. Click the icon to bring up the project properties dialog to alter this behaviour. - + CRS status - Click to open coordinate reference system dialog - + Ready - + Map overview canvas. This canvas can be used to display a locator map that shows the current extent of the map canvas. The current extent is shown as a red rectangle. Any layer on the map can be added to the overview canvas. - + Overview - + Map legend that displays all the layers currently on the map canvas. Click on the check box to turn a layer on or off. Double click on a layer in the legend to customize its appearance and set other properties. - + Layers - + Control rendering order - + Map layer list that displays all layers in drawing order. - + Layer order - - + + < Blank > - + QGIS version - + QGIS code revision - + Compiled against Qt - + Running against Qt - + Compiled against GDAL/OGR - + Running against GDAL/OGR - + Compiled against GEOS - + Running against GEOS - + PostgreSQL Client Version - + No support. - + SpatiaLite Version - + QWT Version - + PROJ.4 Version - + QScintilla2 Version - + This copy of QGIS writes debugging output. - + %1 doesn't have any layers - - - + + + Invalid Data Source - - + + %1 is not a valid or recognized data source - + Vector - + वेक्टर - + PostgreSQL - + Cannot get PostgreSQL select dialog from provider. - + %1 is an invalid layer - not loaded - + %1 is an invalid layer and cannot be loaded. Please check the <a href="#messageLog">message log</a> for further info. - + SpatiaLite - + Cannot get SpatiaLite select dialog from provider. - + Delimited Text - + Cannot get Delimited Text select dialog from provider. - + MSSQL - + Cannot get MSSQL select dialog from provider. - + Oracle - + Cannot get Oracle select dialog from provider. - + WMS - + Cannot get WMS select dialog from provider. - + WCS - + Cannot get WCS select dialog from provider. - + WFS - + Cannot get WFS select dialog from provider. - + Default failed to open: %1 - + Default not found: %1 - + Open Template Project - + Auto-open Project - + Failed to open: %1 - + Not valid project file: %1 - + Project failed to open: %1 - + Default template has been reopened: %1 - + File not found: %1 - + Calculating... - - + + Abort... - + Choose a QGIS project file to open - - - + + + QGIS files - + Loading project: %1 - + Unable to open project - + Enable macros - + Security warning - + project macros have been disabled. - + Project loaded - + Choose a QGIS project file - - + + Saved project to: %1 - - + + Unable to save project %1 - + Choose a file name to save the QGIS project file as - + Unable to load %1 - + Choose a file name to save the map image as - + Saved map image to %1 - + Default system font substituted. - + Open labeling dialog - + Labeling - + Font for layer <b><u>%1</u></b> was not found (<i>%2</i>). %3 - - + + Commit errors - - + + Could not commit changes to layer %1 - + Errors: %1 - + Show more - + Labeling Options - + Please select a vector layer first - + Layer labeling settings - + Reading raster - + Cannot write raster error code: %1 - + Saving done - + Export to vector file has been completed - + Save error - + Export to vector file failed. Error: %1 - - - - - + + + + + No Layer Selected - + To delete features, you must select a vector layer in the legend - + No Vector Layer Selected - + Deleting features only works on vector layers - + Provider does not support deletion - + Data provider does not support deleting features - - - + + + Layer not editable - + The current layer is not editable. Choose 'Start editing' in the digitizing toolbar. - + Delete features - + Delete %n feature(s)? number of features to delete @@ -10980,253 +11241,253 @@ Error: %1 - + Features deleted - + Problem deleting features - + A problem occured during deletion of features - + Merging features... - + Abort - + Create unique print composer title - + (title generated if left empty) - + Composer title - + Title can not be empty! - + Title already exists! - - + + Composer %1 - + copy - - + + No active layer - - + + No active layer found. Please select a layer in the layer list - - + + Active layer is not vector - - + + The merge features tool only works on vector layers. Please select a vector layer from the layer list - - + + Merging features can only be done for layers in editing mode. To use the merge tool, go to Layer->Toggle editing - - - + + + Not enough features selected - - - + + + The merge tool requires at least two selected features - + Merged feature attributes - - + + Merge failed - - + + An error occured during the merge operation - + Union operation canceled - - + + The union operation would result in a geometry type that is not compatible with the current layer and therefore is canceled - + Merged features - + No active vector layer - + To select features, choose a vector layer in the legend - + Features cut - + Features pasted - + Pasted - + New memory layer name - + Layer name - + No features in clipboard. - + No features with geometry found, point type layer will be created. - + Multiple geometry types found, features with geometry different from %1 will be created without geometry. - - - - + + + + Warning - + Cannot create new layer - + Cannot create field %1 (%2,%3) - + Cannot copy style: %1 - + Cannot parse style: %1:%2:%3 - + Cannot read style: %1 - + Start editing failed - + Provider cannot be opened for editing - + Stop editing - + Do you want to save the changes to layer %1? - + Problems during roll back - + Could not %1 changes to layer %2 Errors: %3 @@ -11234,238 +11495,238 @@ Errors: %3 - + rollback - + cancel - + Save - - - + + + all - + Rollback - + Cancel - + Current edits - + %1 current changes for %2 layer(s)? - + copy - + Plugin layer - + Memory layer - - + + Duplicate layer: - + %1 (duplication resulted in invalid layer) - + %1 (%2 type unsupported) - + Couldn't load Python support library: %1 - + Couldn't resolve python support library's instance() symbol. - + Python support ENABLED :-) - + There is a new version of QGIS available - + You are running a development version of QGIS - + You are running the current version of QGIS - + Would you like more information? - - - - + + + + QGIS Version Information - + QGIS - Changes since last release - + Unable to get current version information from server - + Connection refused - server may be down - + QGIS server was not found - + Unknown network socket error: %1 - + Unable to communicate with QGIS Version server %1 - - + + To perform a full histogram stretch, you need to have a raster layer selected. - - + + To change brightness or contrast, you need to have a raster layer selected. - + en documentation language - + http://www.qgis.org/en/commercial-support.html - - + + Layer is not valid - + The layer %1 is not a valid layer and can not be added to the map - + The layer is not a valid layer and can not be added to the map - + Project has layer(s) in edit mode with unsaved edits, which will NOT be saved! - + Save? - + Do you want to save the current project? %1 - + Current CRS: %1 (OTFR enabled) - + Current CRS: %1 (OTFR disabled) - + Map coordinates for the current view extents - + Map coordinates at mouse cursor position - + Extents: - + Maptips require an active layer - + %n feature(s) selected on layer %1. number of selected features @@ -11474,101 +11735,101 @@ Errors: %3 - + Open a GDAL Supported Raster Data Source - + Invalid Layer - + Error adding valid layer to map canvas - - + + Raster layer - + %1 is not a supported raster data source - + Unsupported Data Source - + Exit QGIS - + Do you really want to quit QGIS? - + <p>This project file was saved by an older version of QGIS. When saving this project file, QGIS will update it to the latest version, possibly rendering it useless for older versions of QGIS.<p>Even though QGIS developers try to maintain backwards compatibility, some of the information from the old project file might be lost. To improve the quality of QGIS, we appreciate if you file a bug report at %3. Be sure to include the old project file, and state the version of QGIS you used to discover the error.<p>To remove this warning when opening an older project file, uncheck the box '%5' in the %4 menu.<p>Version of the project file: %1<br>Current version of QGIS: %2 - + <tt>Settings:Options:General</tt> Menu path to setting options - + Warn me when opening a project file saved with an older version of QGIS - + Project file is older - + This project file was saved by an older version of QGIS - + This layer doesn't have a properties dialog. - + Authentication required - + Proxy authentication required - + SSL errors occured accessing URL %1: - + Always ignore these errors? - + %n SSL errors occured number of errors @@ -11639,7 +11900,7 @@ p, li { white-space: pre-wrap; } Providers - + प्रदाता @@ -11731,7 +11992,7 @@ p, li { white-space: pre-wrap; } Type - + प्रकार @@ -11874,7 +12135,7 @@ p, li { white-space: pre-wrap; } - + Application state: QGIS_PREFIX_PATH env var: %1 Prefix: %2 @@ -11889,30 +12150,30 @@ User DB Path: %9 - + match indentation of application state - + [ERROR] Can not make qgis.db private copy - + Could not open qgis.db - + Migration of private qgis.db failed. %1 - + Update of view in private qgis.db failed. %1 @@ -11921,22 +12182,22 @@ User DB Path: %9 QgsAtlasComposition - + Filename parsing error: %1 - + Feature filter parser error: %1 - + Feature filter eval error: %1 - + Filename eval error: %1 @@ -12017,7 +12278,7 @@ User DB Path: %9 ... - + ... @@ -12150,19 +12411,19 @@ User DB Path: %9 Type - + प्रकार Name - + नाम Action - + कार्य @@ -12268,7 +12529,7 @@ User DB Path: %9 ... - + ... @@ -12329,17 +12590,17 @@ User DB Path: %9 QgsAttributeDialog - + Error - + Error: %1 - + Attributes - %1 @@ -12347,53 +12608,53 @@ User DB Path: %9 QgsAttributeEditor - + Select a file - + Select a date - + (no selection) - - + + ... - + ... - + < - + Select filename... - + Save current page url in attribute - + Select date in calendar - + Select color in browser - + Open current page in default browser @@ -12406,32 +12667,37 @@ User DB Path: %9 - + Layer - - + + Description - - + + Value - + मान - + Select data from attributes in selected layer. - + View All + + + Insert NULL value on top + + QgsAttributeSelectionDialog @@ -12474,7 +12740,7 @@ User DB Path: %9 Column - + स्तंभ @@ -12542,7 +12808,7 @@ User DB Path: %9 ... - + ... @@ -12677,7 +12943,7 @@ User DB Path: %9 - Attribute View + Form View @@ -12731,7 +12997,7 @@ User DB Path: %9 - + Attribute table - %1 (%n Feature(s)) feature count @@ -12740,62 +13006,62 @@ User DB Path: %9 - + Attribute table - %1 :: Features total: %2, filtered: %3, selected: %4 - + Expression based filter - + Geometryless feature added - + Attribute added - + Attribute Error - + The attribute could not be added to the layer - + Deleted attribute - + Attribute error - + The attribute(s) could not be deleted - + Parsing error - + Evaluation error - + Error filtering @@ -12803,7 +13069,7 @@ User DB Path: %9 QgsAttributeTableModel - + feature id @@ -12811,7 +13077,7 @@ User DB Path: %9 QgsAttributeTableView - + Select All @@ -12820,7 +13086,7 @@ User DB Path: %9 QgsAttributeTypeDialog - + Attribute Edit Dialog @@ -12950,160 +13216,160 @@ User DB Path: %9 - + The user can select one of the values already used in the attribute. If editable, a line edit is shown with autocompletion support, otherwise a combo box is used. - - - - + + + + Editable - + Simplifies file selection by adding a file chooser dialog. - + Combo box with predefined items. Value is stored in the attribute, description is shown in the combo box. - + Load Data from layer - + Value - + मान - + Description - + Remove Selected - + Load Data from CSV file - + Combo box with values that can be used within the column's type. Must be supported by the provider. - + An immutable attribute is read-only - the user is not able to modify the contents. - + A hidden attribute will be invisible - the user is not able to see it's contents. - + Representation for checked state - + Representation for unchecked state - + A text edit field that accepts multiple lines will be used. - + Date format - + A calendar widget to enter a date. - + <html><head/><body><p>Example formats:</p><table border="0" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px;" cellspacing="2" cellpadding="0" bgcolor="#f6f6f6"><thead><tr><td style=" vertical-align:top; padding-left:10; padding-right:15; padding-top:5; padding-bottom:5;"><p align="center"><span style=" font-family:'Open Sans,sans-serif'; font-size:12px; font-weight:600; color:#363534;">Format</span></p></td><td style=" vertical-align:top; padding-left:10; padding-right:15; padding-top:5; padding-bottom:5;"><p align="center"><span style=" font-family:'Open Sans,sans-serif'; font-size:12px; font-weight:600; color:#363534;">Result</span></p></td></tr></thead><tr><td bgcolor="#f6f6f6" style=" vertical-align:top; padding-left:10; padding-right:10; padding-top:3; padding-bottom:3;"><p><span style=" font-family:'Open Sans,sans-serif'; font-size:11px; color:#66666e; background-color:#f6f6f6;">dd.MM.yyyy</span></p></td><td bgcolor="#f6f6f6" style=" vertical-align:top; padding-left:10; padding-right:10; padding-top:3; padding-bottom:3;"><p><span style=" font-family:'Open Sans,sans-serif'; font-size:11px; color:#66666e; background-color:#f6f6f6;">21.05.2001</span></p></td></tr><tr><td bgcolor="#ffffff" style=" vertical-align:top; padding-left:10; padding-right:10; padding-top:3; padding-bottom:3;"><p><span style=" font-family:'Open Sans,sans-serif'; font-size:11px; color:#66666e; background-color:#ffffff;">ddd MMMM d yy</span></p></td><td bgcolor="#ffffff" style=" vertical-align:top; padding-left:10; padding-right:10; padding-top:3; padding-bottom:3;"><p><span style=" font-family:'Open Sans,sans-serif'; font-size:11px; color:#66666e; background-color:#ffffff;">Tue May 21 01</span></p></td></tr><tr><td bgcolor="#f6f6f6" style=" vertical-align:top; padding-left:10; padding-right:10; padding-top:3; padding-bottom:3;"><p><span style=" font-family:'Open Sans,sans-serif'; font-size:11px; color:#66666e; background-color:#f6f6f6;">hh:mm:ss.zzz</span></p></td><td bgcolor="#f6f6f6" style=" vertical-align:top; padding-left:10; padding-right:10; padding-top:3; padding-bottom:3;"><p><span style=" font-family:'Open Sans,sans-serif'; font-size:11px; color:#66666e; background-color:#f6f6f6;">14:13:09.042</span></p></td></tr><tr><td bgcolor="#ffffff" style=" vertical-align:top; padding-left:10; padding-right:10; padding-top:3; padding-bottom:3;"><p><span style=" font-family:'Open Sans,sans-serif'; font-size:11px; color:#66666e; background-color:#ffffff;">h:m:s ap</span></p></td><td bgcolor="#ffffff" style=" vertical-align:top; padding-left:10; padding-right:10; padding-top:3; padding-bottom:3;"><p><span style=" font-family:'Open Sans,sans-serif'; font-size:11px; color:#66666e; background-color:#ffffff;">2:13:9 pm</span></p></td></tr></table><p><a href="http://qt-project.org/doc/qt-5.0/qtcore/qdatetime.html#toString"><span style=" text-decoration: underline; color:#0000ff;">Reference documentation</span></a></p></body></html> - + Layer - + Key column - + Select layer, key column and value column - + Allow null value - + Order by value - + Allow multiple selections - + Value column - + Filter expression - + ... - + ... - + Read-only field that generates a UUID if empty. - + Height - + Width - + Field contains a color @@ -13129,39 +13395,39 @@ Error was:%2 - - + + Slider - + Dial - - + + Current minimum for this value is %1 and current maximum is %2. - + Attribute has no integer or real type, therefore range is not usable. - + Enumeration is not available for this attribute - + Field contains a filename for a picture - + Field contains an URL @@ -13273,7 +13539,7 @@ Database: %3 Name - + नाम @@ -13303,7 +13569,7 @@ Database: %3 SRID - + SRID @@ -13393,7 +13659,7 @@ Database:%2 Preview - + पूर्वदर्शन @@ -13571,7 +13837,7 @@ Database:%2 ... - + ... @@ -13581,7 +13847,7 @@ Database:%2 Options - + विकल्प @@ -13731,7 +13997,7 @@ Database:%2 Value - + मान @@ -13744,7 +14010,7 @@ Database:%2 Column - + स्तंभ @@ -13774,7 +14040,7 @@ Database:%2 Delete - + हटाना @@ -13884,7 +14150,7 @@ Should the existing classes be deleted before classification? QgsColorRampComboBox - + New color ramp... @@ -13926,347 +14192,362 @@ Should the existing classes be deleted before classification? QgsComposer - + Close - + QGIS - - + + Composer - + Print Composers - + Cu&t - + Cut - + &Copy - + Copy - + कॉपी करें - + &Paste - + Paste - + Edit - + View - + दर्शन - + Panels - + Toolbars - + Layout - + Window - + Help - + Composition - + Item Properties - + Command history - + Atlas generation - - + + x: %1 mm + + + + + y: %1 mm + + + + + page: %3 + + + + + Choose a file name to save the map as - + PDF Format - - - + + + Empty filename pattern - - - + + + The filename pattern is empty. A default one will be used. - + Directory where to save PDF files - - - + + + Unable to write into the directory - - - + + + The given output directory is not writable. Cancelling. - - - - - - - - + + + + + + + + Atlas processing error - - - - + + + + Rendering maps... - - - - + + + + Abort - + Big image - + To create image %1x%2 requires about %3 MB of memory. Proceed? - + Choose a file name to save the map image as - + Memory Allocation Error - + Trying to create image #%1( %2x%3 @ %4dpi ) may result in a memory overflow. Please try a lower resolution or a smaller papersize - + Directory where to save image files - + Image format: - + SVG warning - - + + Don't show this message again - + <p>The SVG export function in QGIS has several problems due to bugs and deficiencies in the - + Qt4 svg code. In particular, there are problems with layers not being clipped to the map bounding box.</p> - + If you require a vector-based output file from Qgis it is suggested that you try printing to PostScript if the SVG output is not satisfactory.</p> - + SVG Format - + Directory where to save SVG files - + copy - + Duplicating composer... - + Duplicate Composer - + Composer duplication failed. - + Save template - + Composer templates - + Save error - + Error, could not save file - + Load template - + Read error - + Error, could not read file - + Composer error - + Error, could not create new composer - + Loading template into composer... - + Project contains WMS layers - + Some WMS servers (e.g. UMN mapserver) have a limit for the WIDTH and HEIGHT parameter. Printing layers from such servers may exceed this limit. If this is the case, the WMS layer will not be printed - + Project contains composition effects - + Advanced composition effects such as blend modes or vector layer transparency are enabled in this project, which cannot be printed as vectors. Printing as a raster is recommended. - + Print as raster @@ -14369,7 +14650,7 @@ Please try a lower resolution or a smaller papersize Default - + चूकना @@ -14390,7 +14671,7 @@ Please try a lower resolution or a smaller papersize ... - + ... @@ -14406,45 +14687,50 @@ Please try a lower resolution or a smaller papersize - + Composer - + Paper Navigation - + Composer Item Actions - + Composer Items - + &Print... - + Ctrl+P - + Zoom Full - + Zoom full + + + Ctrl+0 + + Zoom In @@ -14456,560 +14742,696 @@ Please try a lower resolution or a smaller papersize - - Zoom Out + + Ctrl++ + Zoom Out + + + + Zoom out - + + Ctrl+- + + + + + + Zoom + + + + Add Map - + Add new map - + Add Label - + Add new label - + Add Legend - + Add new legend - + Move Item - + Select/Move item - + Export as Image... - + Export as image - + Export as PDF... - + Export as SVG... - + Add Scalebar - + Add new scalebar - + Refresh - + Refresh view - + + Show Grid + + + + + Show grid + + + + + Ctrl+' + + + + + Snap to Grid + + + + + Snap to grid + + + + + Ctrl+Shift+' + + + + + Show Guides + + + + + Show guides + + + + + Ctrl+; + + + + + Snap to Guides + + + + + Snap to guides + + + + + Ctrl+Shift+; + + + + + Smart Guides + + + + + Smart guides + + + + + Ctrl+Alt+; + + + + + Clear Guides + + + + + Clear guides + + + + Add Image - + Add image - + Move Content - + Move item content - + Group - + Group items - + + Ctrl+G + + + + Ungroup - + Ungroup items - + + Ctrl+Shift+G + + + + Raise - + Raise selected items - + + Ctrl+] + + + + Lower - + Lower selected items - + + Ctrl+[ + + + + Bring to Front - + Move selected items to top - + + Ctrl+Shift+] + + + + Send to Back - + Move selected items to bottom - + + Ctrl+Shift+[ + + + + Load from Template - + Load from template - + Save as Template - + Save as template - + Align Left - + Align selected items left - + Align Center - + Align center horizontal - + Align Right - + Align selected items right - + Align Top - + Align selected items to top - + Align Center Vertical - + Align center vertical - + Align Bottom - + Align selected items bottom - + &Quit - + Quit - + Ctrl+Q - + Add Arrow - + Add arrow - + Add Table - + Add attribute table - + Page Setup - + Page setup - + Ctrl+Shift+P - + &Undo - + Revert last change - + Ctrl+Z - + &Redo - + Restore last change - + Ctrl+Shift+Z - + Add Rectangle - + Add rectangle - + Add Triangle - + Add triangle - + Add Ellipse - + Add ellipse - + Add HTML - + Add html frame - + Composer Manager - + Composer manager - + &New Composer - + New composer - + Ctrl+N - + &Save Project - + Save project - + Ctrl+S - + &Duplicate Composer - + Duplicate composer - + New from Template - + New from template - + Lock Selected Items - + Ctrl+L - + Unlock All - + Unlock All Items - + Ctrl+Shift+L - + Pa&ste in Place - + Paste in place - + Ctrl+Shift+V - + &Delete - + Delete selected items - + Del - + De&select All - + Deselect all - + Ctrl+Shift+A - + Select &All - + Select all items - + Ctrl+A - + &Invert Selection - + Invert selection - + Select Next Item &Below - + Select next item below - + Ctrl+Alt+[ - + Select Next Item &Above - + Select next item above - + Ctrl+Alt+] + + + Pan Composer + + QgsComposerHtmlWidget @@ -15074,7 +15496,7 @@ Please try a lower resolution or a smaller papersize ... - + ... @@ -15090,42 +15512,42 @@ Please try a lower resolution or a smaller papersize - + Background color changed - + Item position changed - + Item outline width - + Item frame toggled - + Item background toggled - + Select background color - + Select frame color - + Item id changed @@ -15414,125 +15836,135 @@ Please try a lower resolution or a smaller papersize - + Item wrapping changed - + Legend title changed - + Legend column count - + Legend split layers - + Legend equal column width - + Legend symbol width - + Legend symbol height - + + Wms Legend width + + + + + Wms Legend height + + + + Legend title space bottom - + Legend group space - + Legend layer space - + Legend symbol space - + Legend icon label space - + Title font changed - + Legend group font changed - + Legend layer font changed - + Legend item font changed - + Legend font color changed - - + + Legend box space - + Legend map changed - + Legend item edited - - - + + + Legend updated - + Legend group added - + Map %1 - + None @@ -15595,175 +16027,192 @@ Please try a lower resolution or a smaller papersize - + Add group - + ... - + ... - + Show feature count for each class of vector layer. - + Auto Update - + Fonts - + Title Font... - + Subgroup Font... - + Group Font... - + Item Font... - + Font color... - + Columns - + Count - + Equal column widths - + Allow to split layer items into multiple columns. - + Split layers - + Symbol - + Symbol width - - - - - - - - + + + + + + + + + + mm - + Symbol height - + + WMS LegendGraphic + + + + + Legend width + + + + + Legend height + + + + Spacing - + Space above text using group style. - + Group Space - + Space above text using subgroup style. - + Subgroup space - + Space above symbol and symbol label. - + Symbol space - + Space between symbol icon and symbol label (symbol label left margin). - + Icon label space - + Box space - + Column space - - + + Space below title. - + Title space - + mm @@ -15908,7 +16357,7 @@ Please try a lower resolution or a smaller papersize ... - + ... @@ -15945,34 +16394,34 @@ Please try a lower resolution or a smaller papersize - + Cache - + Render - + Rectangle - + Solid - - + + Cross @@ -15993,14 +16442,14 @@ Please try a lower resolution or a smaller papersize - + No frame - - + + Zebra @@ -16015,145 +16464,145 @@ Please try a lower resolution or a smaller papersize - - + + Map extent changed - + Select font color - + Canvas items toggled - - - + + + None - + Overview centering mode changed - + Grid checkbox toggled - - + + Grid interval changed - - + + Grid offset changed - + Grid type changed - + Grid cross width changed - + Annotation font changed - + Label font changed - + Annotation distance changed - + Annotation format changed - + Annotation toggled - + Changed annotation precision - + Changed grid frame style - + Changed grid frame width - - - + + + Inside frame - - + + Outside frame - - - + + + Disabled - - - + + + Horizontal - - + + Vertical - + Annotation position changed - + Changed annotation direction - + Map %1 @@ -16391,15 +16840,35 @@ Please try a lower resolution or a smaller papersize QgsComposerMouseHandles - + Change item position - + Change item size + + + %1 items selected + + + + + 1 item selected + + + + + dx: %1 mm dy: %2 mm + + + + + width: %1 mm height: %2 mm + + QgsComposerPictureWidget @@ -16472,7 +16941,7 @@ Please try a lower resolution or a smaller papersize ... - + ... @@ -17061,7 +17530,7 @@ Please try a lower resolution or a smaller papersize Preview - + पूर्वदर्शन @@ -17102,75 +17571,75 @@ Please try a lower resolution or a smaller papersize QgsComposerView - + QGIS - + Label added - + Scale bar added - + Legend added - + Picture added - + Table added - + Shape added - + Move item content - + Arrow added - + Map added - + Html item added - + Html frame added - - - - + + + + Item moved - + Zoom item content @@ -17178,107 +17647,107 @@ Please try a lower resolution or a smaller papersize QgsComposition - + Label added - + Map added - + Arrow added - + Scale bar added - + Shape added - + Picture added - + Legend added - + Table added - + Aligned items left - + Aligned items horizontal center - + Aligned items right - + Aligned items top - + Aligned items vertical center - + Aligned items bottom - + Items locked - + Items unlocked - + Item z-order changed - + Remove item group - + Frame deleted - + Item deleted - + Multiframe removed @@ -17335,171 +17804,171 @@ Please try a lower resolution or a smaller papersize - - + + Landscape - + Portrait - + Map %1 - + Select grid color - - + + Solid - - + + Dots - - + + Crosses - + A5 (148x210 mm) - + A4 (210x297 mm) - + A3 (297x420 mm) - + A2 (420x594 mm) - + A1 (594x841 mm) - + A0 (841x1189 mm) - + B5 (176 x 250 mm) - + B4 (250 x 353 mm) - + B3 (353 x 500 mm) - + B2 (500 x 707 mm) - + B1 (707 x 1000 mm) - + B0 (1000 x 1414 mm) - + Legal (8.5x14 in) - + ANSI A (Letter; 8.5x11 in) - + ANSI B (Tabloid; 11x17 in) - + ANSI C (17x22 in) - + ANSI D (22x34 in) - + ANSI E (34x44 in) - + Arch A (9x12 in) - + Arch B (12x18 in) - + Arch C (18x24 in) - + Arch D (24x36 in) - + Arch E (36x48 in) - + Arch E1 (30x42 in) - - - - + + + + Custom @@ -17568,7 +18037,7 @@ Please try a lower resolution or a smaller papersize - Snap to grid + Grid @@ -17578,9 +18047,8 @@ Please try a lower resolution or a smaller papersize - - - + + mm @@ -17601,31 +18069,22 @@ Please try a lower resolution or a smaller papersize - Pen width - - - - Grid style - - Selection tolerance - - - - + Color... - + Snap to alignments - + + Tolerance @@ -17640,7 +18099,7 @@ Please try a lower resolution or a smaller papersize Action - + कार्य @@ -17783,33 +18242,33 @@ Please try a lower resolution or a smaller papersize QgsCoordinateTransform - + The source spatial reference system (CRS) is not valid. The coordinates can not be reprojected. The CRS is: %1 - - + + CRS - + The destination spatial reference system (CRS) is not valid. The coordinates can not be reprojected. The CRS is: %1 - + inverse transform - + forward transform - + %1 of %2PROJ.4: %3 +to %4 Error: %5 @@ -17821,12 +18280,12 @@ Error: %5 Name - + नाम Info - + जानकारी @@ -18047,7 +18506,7 @@ and current file is [%3] Name - + नाम @@ -18257,7 +18716,7 @@ and current file is [%3] Copy - + कॉपी करें @@ -18527,6 +18986,62 @@ and current file is [%3] 'top'|'center'|'bottom' + + + 'linear'|'radial'|'conical' + + + + + 'feature'|'viewport' + + + + + 'pad'|'repeat'|'reflect' + + + + + 0 (false)|1 (true) + + + + + QgsDatumTransformDialog + + + Select datum transformations for layer + + + + + File '%1' not found in directory '%2' + + + + + QgsDatumTransformDialogBase + + + Select datum transformations + + + + + src transform + + + + + dst transform + + + + + Remember selection + + QgsDbSourceSelectBase @@ -18558,7 +19073,7 @@ and current file is [%3] Delete - + हटाना @@ -19420,7 +19935,7 @@ p, li { white-space: pre-wrap; } Encoding - + संकेतीकरण @@ -20207,7 +20722,7 @@ Leave empty to automatically apply the maximum value. Options - + विकल्प @@ -20222,12 +20737,12 @@ Leave empty to automatically apply the maximum value. Up - + ऊपर Down - + नीचे @@ -20271,7 +20786,7 @@ Leave empty to automatically apply the maximum value. Name - + नाम @@ -20307,7 +20822,7 @@ Leave empty to automatically apply the maximum value. Type - + प्रकार @@ -20354,55 +20869,55 @@ Leave empty to automatically apply the maximum value. QgsDualView - + Attributes changed - + Expression based preview - + Could not set preview column - + Could not set column '%1' as preview column. Parser error: %2 - + Run action - - + + Open form - + Loading features... - + Abort - + Attribute table - + %1 features loaded. @@ -20412,7 +20927,7 @@ Parser error: ... - + ... @@ -20428,13 +20943,13 @@ Parser error: QgsEditorWidgetRegistry - - + + Unknown attribute editor widget '%1' - + Could not save unknown editor widget type '%1'. @@ -20922,7 +21437,7 @@ p, li { white-space: pre-wrap; } ... - + ... @@ -20948,11 +21463,19 @@ p, li { white-space: pre-wrap; } QgsFeatureAction - + Run actions + + QgsFeatureSelectionDlg + + + Dialog + + + QgsFieldCalculator @@ -21050,189 +21573,201 @@ p, li { white-space: pre-wrap; } QgsFieldsProperties - + Label - + + Id - + + Name - + नाम - + Type - + प्रकार - + Type name - + Length - + लंबाई - + Precision - + Comment - + Edit widget - + Alias - - + + Layer + + + + + Field + + + + + Name conflict - - + + The attribute could not be inserted. The name already exists in the table. - + Added attribute - + Deleted attribute - + Line edit - + Unique values - + Unique values editable - + Classification - + Value map - + Edit range - + Slider range - + Dial range - + File name - + Enumeration - + Immutable - + Hidden - + Checkbox - + Text edit - + Calendar - + Value relation - + UUID generator - + Photo - + Web view - + Color - + Editor Widget - + Select edit form - + UI file @@ -21271,58 +21806,68 @@ p, li { white-space: pre-wrap; } - - ... + + Fields + + + + + Relations - + + ... + ... + + + Edit UI - + + - + - - + > - + ^ - + v - + Autogenerate - + Drag and drop designer - + Provide ui-file - - + + QGIS forms can have a Python function that is called when the form is opened. Use this function to add extra logic to your forms. @@ -21338,37 +21883,37 @@ MyForms.py must live on PYTHONPATH, .qgis/python, or inside the project folder.< - + Python Init function - + Delete column - + Ctrl+X - + Suppress attribute form pop-up after feature creation - + Default - + चूकना - + On - + Off @@ -21378,7 +21923,7 @@ MyForms.py must live on PYTHONPATH, .qgis/python, or inside the project folder.< Delete - + हटाना @@ -21396,7 +21941,7 @@ MyForms.py must live on PYTHONPATH, .qgis/python, or inside the project folder.< ... - + ... @@ -21473,7 +22018,7 @@ MyForms.py must live on PYTHONPATH, .qgis/python, or inside the project folder.< Delete - + हटाना @@ -21826,7 +22371,7 @@ gray = no data ... - + ... @@ -21846,7 +22391,7 @@ gray = no data Options - + विकल्प @@ -21966,7 +22511,7 @@ gray = no data Dimensions - + विस्तार @@ -22504,7 +23049,7 @@ Please reselect a valid file. Output file - + निर्गम संचिका @@ -22570,7 +23115,7 @@ Please reselect a valid file. Dimensions - + विस्तार @@ -22928,7 +23473,7 @@ p, li { white-space: pre-wrap; } Info - + जानकारी @@ -23221,7 +23766,7 @@ p, li { white-space: pre-wrap; } View - + दर्शन @@ -23429,48 +23974,48 @@ p, li { white-space: pre-wrap; } QgsGlobePluginDialog - + GDAL files - + DEM files - - + + All files - + Open raster file - + Invalid Path: The file is either unreadable or does not exist - + Invalid URL: - + Do you want to add the datasource anyway? - + Open 3D model file - + Model files @@ -23491,12 +24036,12 @@ p, li { white-space: pre-wrap; } Type - + प्रकार Raster - + रेखापुंज @@ -23510,19 +24055,19 @@ p, li { white-space: pre-wrap; } - + ... - + ... Up - + ऊपर Down - + नीचे @@ -23546,71 +24091,96 @@ p, li { white-space: pre-wrap; } + Video + + + + + Anti Aliasing + + + + + Samples + + + + + [Leave empty for maximum] + + + + + <i>Changing video settings requires a restart of the globe plugin</i> + + + + Model - + Point Layer - + 3D Model - + Stereo - + Stereo Mode - + Screen distance (m) - + Screen width (m) - + Split stereo horizontal separation (px) - + Split stereo vertical separation (px) - + Split stereo vertical eye mapping - + Screen height (m) - + Eye separation (m) - + Reset to defaults - + Split stereo horizontal eye mapping @@ -23649,6 +24219,77 @@ p, li { white-space: pre-wrap; } + + QgsGmlSchema + + + Cannot guess schema + + + + + QgsGradientFillSymbolLayerV2Widget + + + Color + + + + + Color 2 + + + + + Angle + + + + + Gradient type + + + + + Coordinate mode + + + + + Spread + + + + + Reference Point 1 (x) + + + + + Reference Point 1 (y) + + + + + Reference Point 1 (is centroid) + + + + + Reference Point 2 (x) + + + + + Reference Point 2 (y) + + + + + Reference Point 2 (is centroid) + + + QgsGraduatedSymbolRendererV2Model @@ -23659,7 +24300,7 @@ p, li { white-space: pre-wrap; } Value - + मान @@ -23722,7 +24363,7 @@ p, li { white-space: pre-wrap; } Column - + स्तंभ @@ -23737,7 +24378,7 @@ p, li { white-space: pre-wrap; } Delete - + हटाना @@ -23793,17 +24434,17 @@ Press cancel to abort breaks calculation or OK to continue. Column - + स्तंभ Value - + मान Type - + प्रकार @@ -23871,7 +24512,7 @@ Press cancel to abort breaks calculation or OK to continue. Delete - + हटाना @@ -24158,7 +24799,7 @@ Press cancel to abort breaks calculation or OK to continue. Info - + जानकारी @@ -24298,7 +24939,7 @@ Press cancel to abort breaks calculation or OK to continue. Type - + प्रकार @@ -24308,17 +24949,17 @@ Press cancel to abort breaks calculation or OK to continue. Table - + टेबल Column - + स्तंभ Length - + लंबाई @@ -24537,7 +25178,7 @@ Press cancel to abort breaks calculation or OK to continue. Delete selected item - + चयनित वस्तु हटाएँ @@ -25059,7 +25700,7 @@ at line %2 column %3 Options - + विकल्प @@ -25178,7 +25819,7 @@ at line %2 column %3 Input - + निवेश @@ -25247,7 +25888,7 @@ at line %2 column %3 Output file - + निर्गम संचिका @@ -25666,7 +26307,7 @@ p, li { white-space: pre-wrap; } Database Error - + डेटाबेस त्रुटि @@ -26449,6 +27090,67 @@ at line %2 column %3 + + QgsGuiVectorLayerTools + + + Add feature + + + + + Start editing failed + + + + + Provider cannot be opened for editing + + + + + Stop editing + + + + + Do you want to save the changes to layer %1? + + + + + Error + + + + + Problems during roll back + + + + + + Commit errors + + + + + + Could not commit changes to layer %1 + + + + + Errors: %1 + + + + + + Show more + + + QgsHandleBadLayers @@ -26464,7 +27166,7 @@ at line %2 column %3 Type - + प्रकार @@ -26538,7 +27240,7 @@ at line %2 column %3 Type - + प्रकार @@ -26610,7 +27312,7 @@ at line %2 column %3 Delete - + हटाना @@ -26648,7 +27350,7 @@ at line %2 column %3 Not connected - + जुड़ा हुआ नही है @@ -26723,7 +27425,7 @@ This may be a problem in your network connection or at the WMS server. ... - + ... @@ -26761,7 +27463,7 @@ This may be a problem in your network connection or at the WMS server. Value - + मान @@ -26839,32 +27541,37 @@ This may be a problem in your network connection or at the WMS server. - - Layer properties... + + Activate layer + Layer properties... + + + + Expand all - + Collapse all - + Attribute changes - + Cannot print - + Cannot print this item @@ -26960,7 +27667,7 @@ This may be a problem in your network connection or at the WMS server. Input - + निवेश @@ -27000,7 +27707,7 @@ This may be a problem in your network connection or at the WMS server. Type - + प्रकार @@ -27016,7 +27723,7 @@ This may be a problem in your network connection or at the WMS server. ... - + ... @@ -27831,7 +28538,7 @@ This may be a problem in your network connection or at the WMS server. ... - + ... @@ -28671,7 +29378,7 @@ This may be a problem in your network connection or at the WMS server. QgsLayerPropertiesWidget - + Outline: %1 @@ -28679,94 +29386,94 @@ This may be a problem in your network connection or at the WMS server. QgsLegend - - + + sub-group - - + + group - + Legend context - + &Properties - + &Make to Toplevel Item - + Zoom to Group - + &Remove - + &Set Group CRS - + Re&name - + &Group Selected - + Copy Style - + Paste Style - + &Add New Group - + &Expand All - + &Collapse All - + &Update Drawing Order - + Not fully defined drawing order set to legend order. - + Legend @@ -28774,74 +29481,74 @@ This may be a problem in your network connection or at the WMS server. QgsLegendLayer - + following %1 items not displayed - + &Zoom to Layer Extent - + &Zoom to Best Scale (100%) - + &Stretch Using Current Extent - + &Show in Overview - + &Remove - + &Duplicate - + &Set Layer CRS - + Set &Project CRS from Layer - + &Open Attribute Table - - + + Save As... - + Save Selection As... - + &Filter... - + Show Feature Count @@ -28853,26 +29560,31 @@ not displayed Group + + + No Legend Available + + QgsLinePatternFillSymbolLayerWidget - + Angle - + Distance - + Line width - + Color @@ -28970,16 +29682,16 @@ not displayed - - - - - - - - - - + + + + + + + + + + Loading connections @@ -29004,7 +29716,7 @@ not displayed - + The file is not an WFS connections exchange file. @@ -29015,33 +29727,33 @@ not displayed - + The file is not an PostGIS connections exchange file. - + The file is not an MSSQL connections exchange file. - + The file is not an Oracle connections exchange file. - + The file is not an %1 connections exchange file. - - - - - + + + + + Connection with name '%1' already exists. Overwrite? @@ -29062,29 +29774,29 @@ not displayed QgsMapCanvas - + Canvas refresh: %1 ms - + , sender '%1' - + Rendering - + Could not draw %1 because: %2 COMMENTED OUT - + Could not draw %1 because: %2 @@ -29135,90 +29847,90 @@ not displayed - - - + + + %1 at line %2 column %3 - + style not found in database - + Error: qgis element could not be found in %1 - - + + Loading style file %1 failed because: %2 - - + + The directory containing your dataset needs to be writable! - - + + Created default style file as %1 - + ERROR: Failed to created default style file as %1. Check file permissions and retry. - + User database could not be opened. - + The style table could not be created. - + The style %1 was saved to database - + The style %1 was updated in the database. - + The style %1 could not be updated in the database. - + The style %1 could not be inserted into database. - - + + Could not save symbology because: %1 - + ERROR: Failed to created SLD style file as %1. Check file permissions and retry. - + Unable to open file %1 @@ -29226,14 +29938,14 @@ not displayed QgsMapRenderer - - + + Transform error caught: %1 - - + + CRS @@ -29556,88 +30268,94 @@ not displayed QgsMapToolIdentify - + No active layer. To identify features, you must choose an active layer. - + Identifying on %1... - + Identifying done. - - + + (clicked coordinate) - + feature id - + new feature - + Length - + लंबाई - + firstX attributes get sorted; translation for lastX should be lexically larger than this one - + firstY - + lastX attributes get sorted; translation for firstX should be lexically smaller than this one - + lastY - + Area - + Perimeter - + no data - + + Error + + + Identify error + + QgsMapToolIdentifyAction - + No features at this position found. @@ -29661,7 +30379,7 @@ not displayed QgsMapToolNodeTool - + Inserted vertex @@ -29913,22 +30631,22 @@ not displayed QgsMarkerLineSymbolLayerV2Widget - + Interval - + Line offset - + Placement - + 'vertex'|'lastvertex'|'firstvertex'|'centerpoint' @@ -30164,7 +30882,7 @@ not displayed - + %n more unread messages @@ -30235,7 +30953,7 @@ not displayed Delete - + हटाना @@ -30333,7 +31051,7 @@ not displayed Name - + नाम @@ -30539,25 +31257,25 @@ not displayed Schema - + रूपरेखा Table - + टेबल Type - + प्रकार Geometry column - + रेखागणित स्तंभ @@ -30569,7 +31287,7 @@ not displayed SRID - + SRID @@ -30639,27 +31357,27 @@ not displayed Schema - + रूपरेखा Table - + टेबल Type - + प्रकार Geometry column - + रेखागणित स्तंभ SRID - + SRID @@ -30824,12 +31542,12 @@ enhancement QgsNetworkAccessManager - + Network request %1 timed out - + Network @@ -30850,32 +31568,57 @@ enhancement - + + all + + + + + off + + + + + QGIS + + + + + UMN + + + + + GeoServer + + + + Ignore GetCoverage URI reported in capabilities - + Ignore axis orientation - + Save connection - + Should the existing connection %1 be overwritten? - + Saving passwords - + WARNING: You have entered a password. It will be stored in plain text in your project files and in your home directory on Unix-like systems, or in your user profile on Windows. If you do not want this to happen, please press the Cancel button. Note: giving the password is optional. It will be requested interactivly, when needed. @@ -30891,70 +31634,75 @@ Note: giving the password is optional. It will be requested interactivly, when n Connection details - + संपर्क विवरण + DPI-Mode + + + + URL - + If the service requires basic authentication, enter a user name and optional password - + Password - + &User name - + Name - + नाम - + Name of the new connection - + HTTP address of the Web Map Server - + Ignore GetFeatureInfo URI reported in capabilities - - Ignore GetMap URI reported in capabilities + + Ignore GetMap/GetTile URI reported in capabilities - + Ignore axis orientation (WMS 1.3/WMTS) - + Invert axis orientation - + Smooth pixmap transform - + Referer @@ -31006,12 +31754,12 @@ Extended error information: Type - + प्रकार Name - + नाम @@ -31183,7 +31931,7 @@ Extended error information: ... - + ... @@ -31199,7 +31947,7 @@ Extended error information: Geometry column - + रेखागणित स्तंभ @@ -31211,7 +31959,7 @@ Extended error information: Type - + प्रकार @@ -31278,7 +32026,7 @@ Extended error information: Name - + नाम @@ -31376,7 +32124,7 @@ Extended error information: Type - + प्रकार @@ -31402,7 +32150,7 @@ Extended error information: Name - + नाम @@ -31501,12 +32249,12 @@ Extended error information: Output file - + निर्गम संचिका ... - + ... @@ -31557,7 +32305,7 @@ Extended error information: ... - + ... @@ -31654,7 +32402,7 @@ Extended error information: ... - + ... @@ -31728,7 +32476,7 @@ Extended error information: Delete - + हटाना @@ -31868,7 +32616,7 @@ Extended error information: Delete - + हटाना @@ -31908,7 +32656,7 @@ Extended error information: Name - + नाम @@ -31950,7 +32698,7 @@ Extended error information: Options - + विकल्प @@ -31999,7 +32747,7 @@ Always network: always load from network and do not check if the cache has a val Up - + ऊपर @@ -32009,7 +32757,7 @@ Always network: always load from network and do not check if the cache has a val Down - + नीचे @@ -32345,7 +33093,7 @@ Always network: always load from network and do not check if the cache has a val Unknown - + अज्ञात @@ -32478,7 +33226,7 @@ Always network: always load from network and do not check if the cache has a val ... - + ... @@ -32612,14 +33360,14 @@ Always network: always load from network and do not check if the cache has a val Encoding - + संकेतीकरण Type - + प्रकार @@ -32659,7 +33407,7 @@ Always network: always load from network and do not check if the cache has a val Delete - + हटाना @@ -32713,302 +33461,302 @@ Always network: always load from network and do not check if the cache has a val - + Show all features - + Show selected features - + Show features visible on map - + Always - + If needed - + Never - + Load all - + Check file contents - + Check extension - + No - + नहीं - + Basic scan - + Full scan - + All - - + + Cumulative pixel count cut - + Minimum / maximum - + Mean +/- standard deviation - + Selection color - + Detected active locale on your system: %1 - + To vertex - + To segment - + To vertex and segment - - + + Off - - + + map units - - + + pixels - - - + + + Semi transparent circle - - - + + + Cross - - - + + + None - + QGIS - + GEOS - + Round - + Mitre - + Bevel - - - + + + Save default project - + You must set a default project - + Current project saved as default - + Error saving current project as default - + Choose a directory to store project template files - + Choose project file to open at launch - + QGIS files - + Create Options - %1 Driver - + Create Options - pyramids - + Overwrite - + If Undefined - + Unset - + Prepend - + Append - - - + + + Choose a directory - + Enter scale - + Scale denominator - + Load scales - - + + XML files (*.xml *.XML) - + Save scales - + No Stretch - + Stretch To MinMax - + Stretch And Clip To MinMax - + Clip To MinMax - + None / Planimetric @@ -33018,13 +33766,13 @@ Always network: always load from network and do not check if the cache has a val Options - + विकल्प - + General @@ -33070,21 +33818,21 @@ Always network: always load from network and do not check if the cache has a val - + Map tools - + Digitizing - + GDAL @@ -33097,14 +33845,14 @@ Always network: always load from network and do not check if the cache has a val - + Locale - + Network @@ -33155,7 +33903,7 @@ Always network: always load from network and do not check if the cache has a val - + Size @@ -33216,14 +33964,14 @@ Always network: always load from network and do not check if the cache has a val - - - - - - + + + + + + ... - + ... @@ -33309,7 +34057,7 @@ Always network: always load from network and do not check if the cache has a val - + Add @@ -33317,7 +34065,7 @@ Always network: always load from network and do not check if the cache has a val - + Remove @@ -33351,7 +34099,7 @@ Always network: always load from network and do not check if the cache has a val Value - + मान @@ -33555,7 +34303,7 @@ Always network: always load from network and do not check if the cache has a val - + % @@ -33655,471 +34403,496 @@ Always network: always load from network and do not check if the cache has a val - + + WMS getLegendGraphic Resolution + + + + Identify - + Open identify results in a dock window (QGIS restart required) - + Open feature form, if a single feature is identified - + <b>Note:</b> Specify the search radius as a percentage of the map width - + Search radius for identifying features and displaying map tips - + Mode - + Measure tool - + Rubberband color - + Preferred measurements units - + Meters - + Feet - + + Nautical Miles + + + + Preferred angle units - + Degrees - + Radians - + Decimal places - + Keep base unit - + Gon - + Panning and zooming - + Zoom factor - + Mouse wheel action - + Zoom - + Zoom and recenter - + Zoom to mouse cursor - + Nothing - + Predefined scales - + Add predefined scale - + Remove selected - + Insert default scales - + Import from file - + Export to file - + Feature creation - + Validate geometries - + Suppress attribute form pop-up after feature creation - + Reuse last entered attribute values - + Rubberband - + Line color - + Line width in pixels - + Line width - + Snapping - + Default snap mode - + Default snapping tolerance - + Search radius for vertex edits - - + + map units - - + + pixels - + Open snapping options in a dock window (QGIS restart required) - + Vertex markers - + Marker style - + Marker size - + Show markers only for selected features - + Curve offset tool - + Miter limit - + Join style - + Quadrant segments - + GDAL driver options - + Edit Pyramids Options - + Edit Create Options - + GDAL drivers - + In some cases more than one GDAL driver can be used to load the same raster format. Use the list below to specify which to use. - + Name - + नाम - + ext - + Flags - + Description - + Coordinate Reference System (CRS) - + CRS for new layers - - + + Select... - + Use &project CRS - + Prompt for &CRS - + Use default CRS displa&yed below - + When a new layer is created, or when a layer is loaded that has no CRS - + Default CRS for new projects - + Automatically enable 'on the fly' reprojection if CRS of a new added layer differ from CRS of layer(s) already present. CRS of present layer(s) will be used. - + Automatically enable 'on the fly' reprojection if layers have different CRS - + + Don't enable 'on the fly' reprojection + + + + Always start new projects with this CRS - + Enable 'on the &fly' reprojection by default - + Override system locale - + Locale to use instead - + <b>Note:</b> Enabling / changing overide on local requires an application restart - + Additional Info - + Detected active locale on your system: - + WMS search address - + Timeout for network requests (ms) - + Default expiration period for WMS-C/WMTS tiles (hours) - + + Max retry in case of tile request errors + + + + + User-Agent + + + + Cache settings - + Directory - + Clear - + Use proxy for web access - + Host - + Port - + User - - + + Leave this blank if no proxy username / password are required - + Password - + Proxy type - + Exclude URLs (starting with) @@ -34264,7 +35037,7 @@ error:%2 Delete - + हटाना @@ -34429,7 +35202,7 @@ error:%2 Name - + नाम @@ -34612,21 +35385,21 @@ error:%2 - - - - - - - + + + + + + - - - - - - - + + + + + + + + Oracle @@ -34747,7 +35520,7 @@ SQL: %2 - + Could not start transaction @@ -34768,7 +35541,7 @@ SQL: %2 - + Could not commit transaction @@ -34784,7 +35557,7 @@ SQL: %2 - + Could not rollback transaction @@ -34845,13 +35618,13 @@ SQL: %2 - + Could not retrieve extents: %1 SQL: %2 - + Could not execute query. The error message from the database was: %1. @@ -34859,7 +35632,7 @@ SQL: %2 - + Could not retrieve SRID of %1. The error message from the database was: %2. @@ -34867,7 +35640,7 @@ SQL: %3 - + Could not determine SRID of %1. The error message from the database was: %2. @@ -34875,13 +35648,13 @@ SQL: %3 - + %1 has no valid geometry types. SQL: %2 - + Could not determine geometry type of %1. The error message from the database was: %2. @@ -34889,107 +35662,107 @@ SQL: %3 - + Geometry type and srid for empty column %1 of %2 undefined. - + Feature type or srid for %1 of %2 could not be determined or was not requested. - + Editing and adding disabled for 2D+ layer (%1; %2) - + Could not update metadata for %1.%2. SQL:%3 Error: %4 - + Could not insert metadata for %1.%2. SQL:%3 Error: %4 - + Creation spatial index failed. SQL:%1 Error: %2 - + Rebuild of spatial index failed. SQL:%1 Error: %2 - + Could not determine table existence. - + Table %1 could not be dropped. - + Table %1 already exists. - + Table creation failed. - + Could not lookup authid %1:%2 - + Could not lookup WKT. - + Could not determine new srid. - + CRS not found and could not be created. - + Could not insert metadata. - + Drop created table %1 failed. SQL:%2 Error: %3 - + Oracle SRID %1 not found. - + Lookup of Oracle SRID %1 failed. SQL:%2 Error:%3 @@ -35100,19 +35873,19 @@ Error: %2 Table - + टेबल Type - + प्रकार Geometry column - + रेखागणित स्तंभ @@ -35124,7 +35897,7 @@ Error: %2 SRID - + SRID @@ -35197,22 +35970,22 @@ Error: %2 Table - + टेबल Type - + प्रकार Geometry column - + रेखागणित स्तंभ SRID - + SRID @@ -35274,7 +36047,7 @@ Error: %2 Delete - + हटाना @@ -35375,15 +36148,20 @@ Error: %2 - + Value - + मान - + Color + + + Label + + QgsPasteTransformations @@ -35562,7 +36340,7 @@ Error: %2 Name - + नाम @@ -35734,25 +36512,25 @@ Error: %2 Schema - + रूपरेखा Table - + टेबल Type - + प्रकार Geometry column - + रेखागणित स्तंभ @@ -35764,7 +36542,7 @@ Error: %2 SRID - + SRID @@ -35832,17 +36610,17 @@ Error: %2 Schema - + रूपरेखा Table - + टेबल Column - + स्तंभ @@ -35857,7 +36635,7 @@ Error: %2 SRID - + SRID @@ -36227,7 +37005,7 @@ You need to restart QGIS in order to reload it. Name - + नाम @@ -36265,7 +37043,7 @@ You need to restart QGIS in order to reload it. Enabled - + योग्य बनाना @@ -36743,7 +37521,7 @@ p, li { white-space: pre-wrap; } Name - + नाम @@ -36796,7 +37574,7 @@ p, li { white-space: pre-wrap; } Delete - + हटाना @@ -36902,22 +37680,22 @@ p, li { white-space: pre-wrap; } QgsPointPatternFillSymbolLayerWidget - + Horizontal distance - + Vertical distance - + Horizontal displacement - + Vertical displacement @@ -36936,25 +37714,25 @@ p, li { white-space: pre-wrap; } - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + PostGIS @@ -36987,165 +37765,165 @@ error:%3 - + Database connection was successful, but the accessible tables could not be determined. - + Database connection was successful, but the accessible tables could not be determined. The error message from the database was: %1 - + Database connection was successful, but the accessible tables could not be determined. The error message from the database was: %1 - + Database connection was successful, but no accessible tables were found. Please verify that you have SELECT privilege on a table carrying PostGIS geometry. - + Unable to get list of spatially enabled tables from the database - + Retrieval of postgis version failed - + Could not parse postgis version string '%1' - + Connection error: %1 returned %2 [%3] - + Erroneous query: %1 returned %2 [%3] - + Query failed: %1 Error: no result buffer - + Query: %1 returned %2 [%3] - + %1 cursor states lost. SQL: %2 Result: %3 (%4) - + resetting bad connection. - + retry after reset succeeded. - + retry after reset failed again. - + connection still bad after reset. - + bad connection, not retrying. - + Point - + Multipoint - + Line - + Multiline - + Polygon - + Multipolygon - + No Geometry - + Unknown Geometry - + None - + Geometry - + Geography - + TopoGeometry - - + + Query could not be canceled [%1] - + PQgetCancel failed @@ -37438,42 +38216,42 @@ PostGIS %2 - + Unable to open %1 - + Project File Read Error - + %1 at line %2 column %3 - + Project file read error: %1 at line %2 column %3 - + %1 for file %2 - + Unable to save to file %1 - + %1 is not writable. Please adjust permissions (if possible) and try again. - + Unable to save to file %1. Your project may be corrupted on disk. Try clearing some space on the volume and check file permissions before pressing save again. @@ -37535,161 +38313,161 @@ Choose ignore to continue loading without the missing layers. Choose cancel to r ... - + ... QgsProjectProperties - + Selection color - + Layer - + Type - + प्रकार - + Identifiable - + Vector - + वेक्टर - + WMS - + Raster - + रेखापुंज - - + + Coordinate System Restriction - + No coordinate systems selected. Disabling restriction. - + Measure tool (CRS transformation: %1) - + Canvas units (CRS transformation: %1) - - + + OFF - - + + ON - + CRS %1 was already selected - + Coordinate System Restrictions - + The current selection of coordinate systems will be lost. Proceed? - + Select print composer - + Composer Title - + Select restricted layers and groups - + Enter scale - + Scale denominator - + Load scales - - + + XML files (*.xml *.XML) - + Save scales - + Select a valid symbol - + Invalid symbol : - - - + + + Parameters: - - + + Select %1 from pull-down menu to adjust radii - + Can only use ellipsoidal calculations when CRS transformation is enabled @@ -37704,7 +38482,7 @@ Proceed? - + General @@ -37725,455 +38503,465 @@ Proceed? - + Identifiable layers - + Default styles - + OWS server - + Macros - + + Relations + + + + General settings - + absolute - + relative - + Selection color - + Background color - + Save paths - + Descriptive project name - + Default project title - + Project title - + Measure tool - + Ellipsoid (for distance calculations) - + Semi-major - + Semi-minor - + Used when CRS transformation is turned off - + Canvas units - + Degree - + + Nautical miles + + + + Feet - + Meters - + Degree display - + Decimal degrees - + Degrees, Minutes - + Degrees, Minutes, Seconds - + Precision - - + + The number of decimal places for the manual option - + decimal places - - + + Sets the number of decimal places to use for the mouse position display - + Manual - + Automatically sets the number of decimal places in the mouse position display - + The number of decimal places that are used when displaying the mouse position is automatically set to be enough so that moving the mouse by one pixel gives a change in the position display - + Automatic - + Project scales - - - - - - + + + + + + ... - + ... - + Coordinate Reference System (CRS) - + Enable 'on the fly' CRS transformation - + Project layers - - + + Layer - + Type - + प्रकार - + Identifiable - + Default symbols - + Line - + Color Ramp - + Marker - + Fill - + Options - + विकल्प - + Transparency - + % - + Assign random colors to symbols - + Style Manager - + Service capabilitities - + Person - + Title - + Organization - + Online resource - + E-Mail - + Phone - + Abstract - + Fees - + Access constraints - + Keyword list - + WMS capabilitities - + Add geometry to feature response - + Exclude layers - - + + Advertised URL - + Width - + Height - + Maximums for GetMap request - + Advertised extent - + Min. X - + Min. Y - + Max. X - + Max. Y - + Use Current Canvas Extent - + CRS restrictions - + Used - + Exclude composers - + WFS capabilitities - + Published - + Update - + Insert - + Delete - + हटाना - + Unselect all - + Select all - + Python macros @@ -38269,7 +39057,7 @@ Because of this the projection selector will not work... &Clear - + &साफ @@ -38333,7 +39121,7 @@ The data provider said: Fields - + क्षेत्र @@ -38511,7 +39299,7 @@ p, li { white-space: pre-wrap; } ... - + ... @@ -38684,7 +39472,7 @@ p, li { white-space: pre-wrap; } Value - + मान @@ -38707,7 +39495,7 @@ p, li { white-space: pre-wrap; } Default - + चूकना @@ -38828,12 +39616,12 @@ Click on help button to get valid creation options for this format. Name - + नाम Value - + मान @@ -38990,7 +39778,7 @@ Click on help button to get valid creation options for this format. ... - + ... @@ -39066,194 +39854,194 @@ Click on help button to get valid creation options for this format. - + Could not reproject view extent: %1 - - - + + + Raster - + रेखापुंज - + Could not reproject layer extent: %1 - + Driver - + No Data Value - + NoDataValue not set - + Data Type - + Byte - Eight bit unsigned integer - + UInt16 - Sixteen bit unsigned integer - + Int16 - Sixteen bit signed integer - + UInt32 - Thirty two bit unsigned integer - + Int32 - Thirty two bit signed integer - + Float32 - Thirty two bit floating point - + Float64 - Sixty four bit floating point - + CInt16 - Complex Int16 - + CInt32 - Complex Int32 - + CFloat32 - Complex Float32 - + CFloat64 - Complex Float64 - + Could not determine raster data type. - + Pyramid overviews - + Layer Spatial Reference System - + Layer Extent (layer original source projection) - + Project Spatial Reference System - + Band - + Band No - + No Stats - + No stats collected yet - + Min Val - + Max Val - + Range - + Mean - + Sum of squares - + Standard Deviation - + Sum of all cells - + Cell Count - + Cannot instantiate the '%1' data provider - + Provider is not valid (provider: %1, URI: %2 - + <maplayer> not found. @@ -39473,7 +40261,7 @@ Click on help button to get valid creation options for this format. Value - + मान @@ -39875,7 +40663,7 @@ Click on help button to get valid creation options for this format. ... - + ... @@ -40007,7 +40795,7 @@ p, li { white-space: pre-wrap; } Type - + प्रकार @@ -40326,7 +41114,7 @@ datasets with maximum width and height specified below. ... - + ... @@ -40487,7 +41275,7 @@ standard deviation × Unknown - + अज्ञात @@ -40620,7 +41408,7 @@ standard deviation × ... - + ... @@ -40670,12 +41458,12 @@ standard deviation × Up - + ऊपर Down - + नीचे @@ -40789,6 +41577,206 @@ standard deviation × + + QgsRelReferenceConfigDlgBase + + + Dialog + + + + + Display expression + + + + + Allow NULL value + + + + + Show embedded form + + + + + Relation + + + + + QgsRelation + + + Cannot create relation. Unexpected tag '%1' + + + + + + Relation defined for layer '%1' which does not exist. + + + + + + Relation defined for layer '%1' which is not of type VectorLayer. + + + + + QgsRelationAddDlg + + + + [Generated automatically] + + + + + QgsRelationAddDlgBase + + + Dialog + + + + + Referencing Field + + + + + Referenced Layer (Parent) + + + + + Referenced Field + + + + + Referencing Layer (Child) + + + + + Name + नाम + + + + Id + + + + + QgsRelationEditorWidgetBase + + + Form + + + + + + Toggle editing + + + + + New + + + + + Delete + + + + + Link + + + + + Unlink + + + + + Form View + + + + + Table View + + + + + QgsRelationManagerDialogBase + + + Dialog + + + + + Name + नाम + + + + Referencing Layer + + + + + Referencing Field + + + + + Referenced Layer + + + + + Referenced Field + + + + + Id + + + + + Add Relation + + + + + Remove Relation + + + + + QgsRelationReferenceWidget + + + Open Form + + + + + The relation is not valid. Please make sure your relation definitions are ok. + + + QgsRendererRulePropsDialog @@ -40810,7 +41798,7 @@ standard deviation × ... - + ... @@ -40944,7 +41932,7 @@ standard deviation × Copy - + कॉपी करें @@ -41195,7 +42183,7 @@ standard deviation × Action - + कार्य @@ -41244,7 +42232,7 @@ standard deviation × Delete - + हटाना @@ -41334,37 +42322,37 @@ standard deviation × QgsSVGFillSymbolLayerWidget - + Select svg texture file - + Texture width - + SVG file - + Rotation - + Color - + Border color - + Border width @@ -41455,7 +42443,7 @@ standard deviation × &Clear - + &साफ @@ -41726,7 +42714,7 @@ The error was: Name - + नाम @@ -41977,7 +42965,7 @@ enhancement ... - + ... @@ -42007,7 +42995,7 @@ enhancement Value - + मान @@ -42365,7 +43353,6 @@ enhancement - @@ -42395,11 +43382,10 @@ enhancement - - - - + + + @@ -42424,8 +43410,8 @@ SQL: %1 - - + + @@ -42448,7 +43434,7 @@ SQL: %1 Databases - + डेटाबेस @@ -42487,19 +43473,19 @@ SQL: %1 Table - + टेबल Type - + प्रकार Geometry column - + रेखागणित स्तंभ @@ -42624,17 +43610,17 @@ but implies better performance thereafter. Table - + टेबल Type - + प्रकार Geometry column - + रेखागणित स्तंभ @@ -43029,7 +44015,7 @@ p, li { white-space: pre-wrap; } SRID - + SRID @@ -43054,7 +44040,7 @@ p, li { white-space: pre-wrap; } Name - + नाम @@ -43082,7 +44068,7 @@ p, li { white-space: pre-wrap; } Schema - + रूपरेखा @@ -43443,7 +44429,7 @@ Do you want to overwrite the [%2] relation? SRID - + SRID @@ -44135,7 +45121,7 @@ There was a problem with your symbol database. Database Error - + डेटाबेस त्रुटि @@ -44290,7 +45276,7 @@ There was a problem with your symbol database. Type - + प्रकार @@ -44321,7 +45307,7 @@ There was a problem with your symbol database. Delete - + हटाना @@ -44337,23 +45323,23 @@ There was a problem with your symbol database. QgsSvgCache - + SVG request failed [error: %1 - url: %2] - - + + SVG - + SVG request error [status: %1 - reason phrase: %2] - + %1 of %2 bytes of svg image downloaded. @@ -44361,57 +45347,57 @@ There was a problem with your symbol database. QgsSvgMarkerSymbolLayerV2Widget - + Select SVG file - + SVG files - + Size - + Border width - + Angle - + Offset - + SVG file - + Color - + Border color - + Horizontal anchor point - + Vertical anchor point @@ -44606,12 +45592,12 @@ There was a problem with your symbol database. Output file - + निर्गम संचिका ... - + ... @@ -44624,7 +45610,7 @@ There was a problem with your symbol database. Delete - + हटाना @@ -44934,7 +45920,7 @@ p, li { white-space: pre-wrap; } - + Linear @@ -44969,7 +45955,7 @@ p, li { white-space: pre-wrap; } ... - + ... @@ -45047,46 +46033,46 @@ p, li { white-space: pre-wrap; } - - - + + + Info - + जानकारी - + Please set output name - + %1 requires at least %2 GCPs. Please define more - + Invalid output file name - + Save raster - - + + Select save PDF file - - + + PDF Format - + _modified Georeferencer:QgsOpenRasterDialog.cpp - used to modify a user given file name @@ -45112,7 +46098,7 @@ p, li { white-space: pre-wrap; } Preview - + पूर्वदर्शन @@ -45268,7 +46254,7 @@ p, li { white-space: pre-wrap; } Type - + प्रकार @@ -45298,7 +46284,7 @@ p, li { white-space: pre-wrap; } Preview - + पूर्वदर्शन @@ -45309,150 +46295,150 @@ p, li { white-space: pre-wrap; } QgsVectorLayer - + Updating feature count for layer %1 - + Abort - + ERROR: no provider - + ERROR: layer not editable - + Commit errors: %1 - + General - + Layer comment - + Storage type of this layer - + Description of this provider - + Source for this layer - + Geometry type of the features in this layer - + Primary key attributes - + The number of features in this layer - + Editing capabilities of this layer - + Extents - + In layer spatial reference system units - - + + xMin,yMin %1,%2 : xMax,yMax %3,%4 - + unknown extent - - + + In project spatial reference system units - + Layer Spatial Reference System - + Project (Output) Spatial Reference System - + (Invalid transformation of layer extents) - + Attribute field info - + Field - + Type - + प्रकार - + Length - + लंबाई - + Precision - + Comment - + Error: qgis element could not be found @@ -45654,7 +46640,7 @@ p, li { white-space: pre-wrap; } Spatial Index - + स्थानिक सूची @@ -45795,7 +46781,7 @@ p, li { white-space: pre-wrap; } Fields - + क्षेत्र @@ -45876,7 +46862,7 @@ p, li { white-space: pre-wrap; } Create spatial index - + स्थानिक सूची बनावें @@ -46035,7 +47021,7 @@ p, li { white-space: pre-wrap; } Type - + प्रकार @@ -46123,7 +47109,7 @@ p, li { white-space: pre-wrap; } Encoding - + संकेतीकरण @@ -46220,7 +47206,7 @@ p, li { white-space: pre-wrap; } Value - + मान @@ -46230,7 +47216,7 @@ p, li { white-space: pre-wrap; } Preview - + पूर्वदर्शन @@ -46243,7 +47229,7 @@ p, li { white-space: pre-wrap; } Delete - + हटाना @@ -46285,7 +47271,7 @@ p, li { white-space: pre-wrap; } Delete - + हटाना @@ -46458,7 +47444,7 @@ p, li { white-space: pre-wrap; } Delete - + हटाना @@ -46504,7 +47490,7 @@ p, li { white-space: pre-wrap; } Delete - + हटाना @@ -46548,17 +47534,17 @@ p, li { white-space: pre-wrap; } - + encoding %1 not supported. - + WMS Provider - + Could not open the WMS Provider @@ -46625,38 +47611,38 @@ p, li { white-space: pre-wrap; } - + Could not understand the response. The %1 provider said: %2 - + WMS proxies - + Several WMS servers have been added to the server list. Note that if you access the internet via a web proxy, you will need to set the proxy settings in the QGIS options dialog. - + parse error at row %1, column %2: %3 - + network error: %1 - + The %1 connection already exists. Do you want to overwrite it? - + Confirm Overwrite @@ -46696,7 +47682,7 @@ p, li { white-space: pre-wrap; } Delete - + हटाना @@ -46716,12 +47702,12 @@ p, li { white-space: pre-wrap; } Name - + नाम - - + + Title @@ -46758,117 +47744,117 @@ p, li { white-space: pre-wrap; } Options - + विकल्प - + Layer name - + Coordinate Reference System - + Change ... - + Tile size - + Feature limit for GetFeatureInfo - + 10 - + Layer Order - + Move selected layer UP - + Up - + ऊपर - + Move selected layer DOWN - + Down - + नीचे - - + + Layer - - + + Style - + Tilesets - + Format - + Tileset - + CRS - + Server Search - + Search - + Description - + URL - + Add selected row to WMS list @@ -47193,7 +48179,7 @@ Response was: Value - + मान @@ -47331,12 +48317,12 @@ Response was: - + Read data error - + RasterIO error: @@ -47344,75 +48330,79 @@ Response was: QgsWmsProvider - + Cannot parse URI - + Cannot calculate extent - + Cannot set CRS - + Number of layers and styles don't match - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + WMS - + Number of tile layers must be one - + Tile layer not found - + Tile layer or tile matrix set not found - + Getting map via WMS. - + Getting tiles. - - + + %n tile requests in background tile request count @@ -47421,8 +48411,8 @@ Response was: - - + + , %n cache hits tile cache hits @@ -47431,8 +48421,8 @@ Response was: - - + + , %n cache misses. tile cache missed @@ -47441,8 +48431,8 @@ Response was: - - + + , %n errors. errors @@ -47451,127 +48441,134 @@ Response was: - + image is NULL - + unexpected image size - + Tile request error - + + Status: %1 Reason phrase: %2 - + Tile request error (Title:%1; Error:%2; URL: %3) - + Tile request error (Status:%1; Content-Type:%2; Length:%3; URL: %4) - + Returned image is flawed [Content-Type:%1; URL: %2] - - Tile request failed [error:%1 url:%2] + + + Not logging more than 100 request errors. - - - Not logging more than 100 request errors. + + Tile request max retry error. Failed %1 requests for tile %2 of tileRequest %3 (url: %4) + + + + + repeat tileRequest %1 tile %2(retry %3) - + Map request error (Status: %1; Reason phrase: %2; URL:%3) - + Returned image is flawed [Content-Type:%1; URL:%2] - + Map request error (Title:%1; Error:%2; URL: %3) - + Map request error (Status: %1; Response: %2; Content-Type: %3; URL:%4) - + Map request failed [error:%1 url:%2] - + empty capabilities document - + Tried URL: %1 - + Capabilities request redirected. - + + Redirect loop detected: %1 - + empty of capabilities: %1 - + Download of capabilities failed: %1 - + %1 of %2 bytes of capabilities downloaded. - + %1 of %2 bytes of map downloaded. - - - + + + Dom Exception - + Could not get WMS capabilities: %1 at line %2 column %3 This is probably due to an incorrect WMS Server URL. Response was: @@ -47580,7 +48577,7 @@ Response was: - + Could not get WMS capabilities in the expected format (DTD): no %1 or %2 found. This might be due to an incorrect WMS Server URL. Tag:%3 @@ -47589,7 +48586,7 @@ Response was: - + Could not get WMS Service Exception at %1: %2 at line %3 column %4 Response was: @@ -47598,200 +48595,200 @@ Response was: - + Service Exception - + Request contains a format not offered by the server. - + Request contains a CRS not offered by the server for one or more of the Layers in the request. - + Request contains a SRS not offered by the server for one or more of the Layers in the request. - + GetMap request is for a Layer not offered by the server, or GetFeatureInfo request is for a Layer not shown on the map. - + Request is for a Layer in a Style not offered by the server. - + GetFeatureInfo request is applied to a Layer which is not declared queryable. - + GetFeatureInfo request contains invalid X or Y value. - + Value of (optional) UpdateSequence parameter in GetCapabilities request is equal to current value of service metadata update sequence number. - + Value of (optional) UpdateSequence parameter in GetCapabilities request is greater than current value of service metadata update sequence number. - + Request does not include a sample dimension value, and the server did not declare a default value for that dimension. - + Request contains an invalid sample dimension value. - + Request is for an optional operation that is not supported by the server. - + (No error code was reported) - + (Unknown error code) - + The WMS vendor also reported: - + Extent for layer %1 not found in capabilities - - - - + + + + Property - - - - + + + + Value - + मान - - + + Name - + नाम - + Visibility - + Visible - + Hidden - - - + + + Title - - - + + + Abstract - + Can Identify - - - - + + + + Yes - + हाँ - - - - + + + + No - + नहीं - + Can be Transparent - + Can Zoom In - + Cascade Count - + Fixed Width - + Fixed Height - + WGS 84 Bounding Box - - + + Available in CRS - + (and %n more) crs @@ -47800,224 +48797,264 @@ Response was: - + Available in style - - + + Server Properties - - + + Selected Layers - - + + Other Layers - + Tile Layer Properties - + Cache Stats - + WMS Version - + Keywords - + Online Resource - + Contact Person - + Fees - + Access Constraints - + Image Formats - + Identify Formats - + Layer Count - + Tile Layer Count - + GetCapabilitiesUrl - + GetMapUrl - - + + &nbsp;<font color="red">(advertised but ignored)</font> - + GetFeatureInfoUrl - + GetTileUrl - + Tile templates - + FeatureInfo templates - + Tileset Properties - + WMTS - + WMS-C - + Selected - + Available Styles - + CRS - + Bounding Box - + Available Tilesets - + Cache stats - + Hits - + Misses - + Errors - + Format not supported - + + Context not fully specified (extent was defined but width and/or height was not). + + + + Get feature info request error (Title:%1; Error:%2; URL: %3) - + GML schema is not valid - + GML is not valid - + + Cannot identify + + + + identify request redirected. - + Map getfeatureinfo error %1: %2 - + Cannot parse getfeatureinfo: %1 - + Map getfeatureinfo error: %1 [%2] + + + getLegendGraphic: Can not determine resolution uri parameter [map_resolution | dpi]. No resolution parameter will be used + + + + + GetLegendGraphic request redirected. + + + + + GetLegendGraphic request error + + + + + Returned legend image is flawed [URL: %1] + + + + + Download of GetLegendGraphic failed: %1 + + + + + %1 of %2 bytes of GetLegendGraphic downloaded. + + QgsWmtsDimensionsBase @@ -48035,7 +49072,7 @@ Response was: Value - + मान @@ -48045,7 +49082,7 @@ Response was: Default - + चूकना @@ -48272,7 +49309,7 @@ Response was: Length - + लंबाई @@ -48369,15 +49406,15 @@ Response was: &Database - + &डेटाबेस Sorry - + क्षमा करें No database selected or you are not connected to it. - + कोई डेटाबेस का चयन किया है या आप इसे से जुड़े नहीं हैं. @@ -48385,22 +49422,22 @@ Response was: Schema - + रूपरेखा Table - + टेबल Type - + प्रकार SRID - + SRID @@ -48410,7 +49447,7 @@ Response was: Geometry column - + रेखागणित स्तंभ @@ -48470,7 +49507,7 @@ Description: %2 Name - + नाम @@ -48637,25 +49674,25 @@ Description: %2 Schema - + रूपरेखा Table - + टेबल Type - + प्रकार SRID - + SRID @@ -48667,7 +49704,7 @@ Description: %2 Geometry column - + रेखागणित स्तंभ @@ -48749,7 +49786,7 @@ Description: %3 Delete - + हटाना @@ -48795,7 +49832,7 @@ Description: %3 Unable to save edits. Reason: - %1 + %s @@ -48851,7 +49888,7 @@ Description: %3 Delete - + हटाना @@ -48979,7 +50016,7 @@ Description: %3 Comment: - + टिप्पणी: @@ -49377,7 +50414,7 @@ Description: %3 Value - + मान @@ -49577,6 +50614,137 @@ Description: %3 + + WidgetGradientFill + + + Form + + + + + Two color + + + + + Color ramp + + + + + Gradient type + + + + + Linear + + + + + Radial + + + + + Conical + + + + + Coord mode + + + + + Object + + + + + Viewport + + + + + Spread + + + + + Pad + + + + + Repeat + + + + + Reflect + + + + + Reference Point 1 + + + + + + x + + + + + + y + + + + + + Feature centroid + + + + + Reference Point 2 + + + + + Angle + + + + + ° + + + + + Data defined properties... + + + + + Millimeter + + + + + Map unit + + + + + Offset X,Y + + + WidgetLinePatternFill @@ -49763,7 +50931,7 @@ Description: %3 ... - + ... @@ -50156,7 +51324,7 @@ Description: %3 ... - + ... @@ -50179,7 +51347,7 @@ Description: %3 ... - + ... @@ -52103,12 +53271,12 @@ Identifiable layers can be set in the Project Properties dialog <label>Set ... - + ... Output file - + निर्गम संचिका @@ -52226,7 +53394,7 @@ For support send a mail to scala@itc.cnr.it Undefined - + अपरिभाषित @@ -52508,7 +53676,7 @@ p, li { white-space: pre-wrap; } Value - + मान @@ -52623,7 +53791,7 @@ p, li { white-space: pre-wrap; } Options - + विकल्प @@ -53107,7 +54275,7 @@ Plugin will not be enabled. Create spatial index - + स्थानिक सूची बनावें @@ -53200,11 +54368,11 @@ Format a string using supplied arguments. - <h3>LIKE expression</h3> -Returns 1 if the first parameter matches case-insensitive the supplied pattern. ILIKE can be used instead of LIKE to make the match case-insensitive. Works with numbers also. + <h3>ILIKE expression</h3> +Returns 1 if the first parameter matches case-insensitive the supplied pattern. LIKE can be used instead of ILIKE to make the match case-sensitive. Works with numbers also. <h4>Syntax</h4> -<pre>string/number LIKE pattern</pre> +<pre>string/number ILIKE pattern</pre> <h4>Arguments</h4> None @@ -57169,7 +58337,7 @@ None Raster - + रेखापुंज @@ -57679,7 +58847,7 @@ None Vector - + वेक्टर @@ -58046,4 +59214,22 @@ None + + widgetNumberInput + + + Form + + + + + Open number input dialog + + + + + ... + ... + + diff --git a/python/gui/qgisinterface.sip b/python/gui/qgisinterface.sip index 854411dfc4fb..2baea0c48190 100644 --- a/python/gui/qgisinterface.sip +++ b/python/gui/qgisinterface.sip @@ -408,6 +408,7 @@ class QgisInterface : QObject virtual QAction *actionSelectFreehand() = 0; virtual QAction *actionSelectRadius() = 0; virtual QAction *actionIdentify() = 0; + virtual QAction *actionFeatureAction() = 0; virtual QAction *actionMeasure() = 0; virtual QAction *actionMeasureArea() = 0; virtual QAction *actionZoomFullExtent() = 0; diff --git a/python/plugins/processing/gui/CrsSelectionPanel.py b/python/plugins/processing/gui/CrsSelectionPanel.py index 86db96e2041d..13b27badbf92 100644 --- a/python/plugins/processing/gui/CrsSelectionPanel.py +++ b/python/plugins/processing/gui/CrsSelectionPanel.py @@ -27,13 +27,13 @@ from PyQt4 import QtGui, QtCore from processing.gui.CrsSelectionDialog import CrsSelectionDialog - +from qgis.core import QgsCoordinateReferenceSystem class CrsSelectionPanel(QtGui.QWidget): def __init__(self, default): super(CrsSelectionPanel, self).__init__(None) - self.authid = default + self.authid = QgsCoordinateReferenceSystem(default).authid() self.horizontalLayout = QtGui.QHBoxLayout(self) self.horizontalLayout.setSpacing(2) self.horizontalLayout.setMargin(0) diff --git a/python/plugins/processing/r/scripts/Advanced_Raster_histogram.rsx b/python/plugins/processing/r/scripts/Advanced_Raster_histogram.rsx deleted file mode 100644 index f0b03eac2587..000000000000 --- a/python/plugins/processing/r/scripts/Advanced_Raster_histogram.rsx +++ /dev/null @@ -1,8 +0,0 @@ -##[Example scripts]=group -##Layer = raster -##no_data_value = number 0 -##breaks = number 100 -##color = string red -##showplots -NAvalue(Layer) = no_data_value -hist(Layer, breaks=breaks,col=color) diff --git a/python/plugins/processing/r/scripts/Advanced_raster_histogram.rsx.help b/python/plugins/processing/r/scripts/Advanced_raster_histogram.rsx.help new file mode 100644 index 000000000000..284475707d19 --- /dev/null +++ b/python/plugins/processing/r/scripts/Advanced_raster_histogram.rsx.help @@ -0,0 +1,22 @@ +(dp0 +S'ALG_CREATOR' +p1 +V +p2 +sS'ALG_DESC' +p3 +VThis algorithm generates a histogram or a density plot for the given raster. NOTE that you should not use this algorithm to process large rasters.\u000a\u000aR dependencies: rpanel, rasterVis. If you are using Linux you need to install "tcktk" and "BWidget" from your package master. +p4 +sS'Dens_or_Hist' +p5 +VUse 'hist' to produce histogram of the raster values (separate plots for each band) and 'dens' if you want to create a density plot (single plot for all bands). +p6 +sS'RPLOTS' +p7 +VRaster histogram. +p8 +sS'Layer' +p9 +VA single- or multi-band raster. +p10 +s. diff --git a/python/plugins/processing/r/scripts/Characteristic_hull_method.rsx b/python/plugins/processing/r/scripts/Characteristic_hull_method.rsx new file mode 100644 index 000000000000..611687ee3021 --- /dev/null +++ b/python/plugins/processing/r/scripts/Characteristic_hull_method.rsx @@ -0,0 +1,8 @@ +##Home Range Analysis=group +##Layer=vector +##Field=Field Layer +##Home_ranges=Output vector +library(adehabitatHR) +library(deldir) +res <- CharHull(Layer[,Field]) +Home_ranges<-getverticeshr(res) diff --git a/python/plugins/processing/r/scripts/Characteristic_hull_method.rsx.help b/python/plugins/processing/r/scripts/Characteristic_hull_method.rsx.help new file mode 100644 index 000000000000..40f8338d89e0 --- /dev/null +++ b/python/plugins/processing/r/scripts/Characteristic_hull_method.rsx.help @@ -0,0 +1,26 @@ +(dp0 +S'ALG_DESC' +p1 +VThis script computes the Characteristic Hull method that relies on the calculation of the Delaunay triangulation of the set of relocations. Then, the triangles are ordered according to their area (and not their perimeter). The smallest triangles correspond to the areas the most intensively used by the animals. It is then possible to derive the home range estimated for a given percentage level.\u000a\u000aR depencies: library "adehabitatHR" and "deldir".\u000a +p2 +sS'Home_ranges' +p3 +VThe home-range contours. +p4 +sS'ALG_CREATOR' +p5 +VFilipe S. Dias, filipesdias(at)gmail.com +p6 +sS'Layer' +p7 +VA layer containing the relocations of one or more animals +p8 +sS'Field' +p9 +VThe field containing the unique indentifer for each animal (type "string"). +p10 +sS'ALG_HELP_CREATOR' +p11 +VFilipe S. Dias, filipesdias(at)gmail.com +p12 +s. diff --git a/python/plugins/processing/r/scripts/Compute_Ripley-Rasson_spatial_domain.rsx b/python/plugins/processing/r/scripts/Compute_Ripley-Rasson_spatial_domain.rsx deleted file mode 100644 index 21e75d13e345..000000000000 --- a/python/plugins/processing/r/scripts/Compute_Ripley-Rasson_spatial_domain.rsx +++ /dev/null @@ -1,9 +0,0 @@ -##[Example scripts]=group -##points=vector -##out=output vector -library("spatstat") -library("maptools") -spatpoints = as(points,"SpatialPoints") -ripras=ripras(as(spatpoints,"ppp")) -polyg=as(ripras,"SpatialPolygons") -out = SpatialPolygonsDataFrame(polyg, data.frame(1)) diff --git a/python/plugins/processing/r/scripts/Create_random_sampling_grid.rsx b/python/plugins/processing/r/scripts/Create_random_sampling_grid.rsx deleted file mode 100644 index bd53809f1a95..000000000000 --- a/python/plugins/processing/r/scripts/Create_random_sampling_grid.rsx +++ /dev/null @@ -1,6 +0,0 @@ -##polyg=vector -##numpoints=number 10 -##output=output vector -##[Example scripts]=group -pts=spsample(polyg,numpoints,type="random") -output=SpatialPointsDataFrame(pts, as.data.frame(pts)) diff --git a/python/plugins/processing/r/scripts/Create_regular_sampling_grid.rsx b/python/plugins/processing/r/scripts/Create_regular_sampling_grid.rsx deleted file mode 100644 index 0c4d69ea8857..000000000000 --- a/python/plugins/processing/r/scripts/Create_regular_sampling_grid.rsx +++ /dev/null @@ -1,6 +0,0 @@ -##polyg=vector -##numpoints=number 10 -##output=output vector -##[Example scripts]=group -pts=spsample(polyg,numpoints,type="regular") -output=SpatialPointsDataFrame(pts, as.data.frame(pts)) \ No newline at end of file diff --git a/python/plugins/processing/r/scripts/Dotplot.rsx b/python/plugins/processing/r/scripts/Dotplot.rsx new file mode 100644 index 000000000000..0f87ce91e4db --- /dev/null +++ b/python/plugins/processing/r/scripts/Dotplot.rsx @@ -0,0 +1,4 @@ +##Vector processing=group +##Layer = raster +##showplots +hist(as.matrix(Layer),main="Histogram",xlab="Layer") diff --git a/python/plugins/processing/r/scripts/Dotplot.rsx.help b/python/plugins/processing/r/scripts/Dotplot.rsx.help new file mode 100644 index 000000000000..f4533291fe11 --- /dev/null +++ b/python/plugins/processing/r/scripts/Dotplot.rsx.help @@ -0,0 +1,22 @@ +(dp0 +S'ALG_CREATOR' +p1 +VFilipe S. Dias +p2 +sS'Field' +p3 +VA numeric field. +p4 +sS'ALG_DESC' +p5 +VThis tool creates a dotplot of the input numeric field using the function dotchart().\u000a +p6 +sS'Layer' +p7 +VA vector layer with a numeric field. +p8 +sS'ALG_HELP_CREATOR' +p9 +VFilipe S. Dias +p10 +s. diff --git a/python/plugins/processing/r/scripts/F_function.rsx b/python/plugins/processing/r/scripts/F_function.rsx new file mode 100644 index 000000000000..1f6e71f598d8 --- /dev/null +++ b/python/plugins/processing/r/scripts/F_function.rsx @@ -0,0 +1,8 @@ +##Point pattern analysis=group +##Layer=vector +##Nsim=number 10 +##showplots +library("maptools") +library("spatstat") +ppp=as(as(Layer, "SpatialPoints"),"ppp") +plot(envelope(ppp, Fest, nsim=Nsim)) diff --git a/python/plugins/processing/r/scripts/F_function.rsx.help b/python/plugins/processing/r/scripts/F_function.rsx.help new file mode 100644 index 000000000000..4a849e71f2c8 --- /dev/null +++ b/python/plugins/processing/r/scripts/F_function.rsx.help @@ -0,0 +1,26 @@ +(dp0 +S'ALG_DESC' +p1 +VThis R script computes simulation envelopes of the F(r) - empty space function.\u000a\u000aThe empty space function (also called the \u201cspherical contact distribution\u201d or the \u201cpoint-to-nearest-event\u201d distribution) of a stationary point process X is the cumulative distribution function F of the distance from a fixed point in space to the nearest point of X. An estimate of F derived from a spatial point pattern dataset can be used in exploratory data analysis and formal inference about the pattern . In exploratory analyses, the estimate of F is a useful statistic summarising the sizes of gaps in the pattern. For inferential purposes, the estimate of F is usually compared to the true value of F for a completely random (Poisson) point process.\u000a\u000aR dependencies: library "maptools" and "spatstat" +p2 +sS'ALG_CREATOR' +p3 +VVictor Olaya - volaya(at)gmail.com +p4 +sS'Layer' +p5 +VA vector containg a point pattern. +p6 +sS'Nsim' +p7 +VNumber of simulated point patterns to be generated when computing the envelopes.\u000a\u000a +p8 +sS'RPLOTS' +p9 +VPlot with the simulation envelopes. +p10 +sS'ALG_HELP_CREATOR' +p11 +VFilipe S. Dias - filipesdias(at)gmail.com +p12 +s. diff --git a/python/plugins/processing/r/scripts/F_function_-_distance_from_a_point_to_nearest_event.rsx b/python/plugins/processing/r/scripts/F_function_-_distance_from_a_point_to_nearest_event.rsx deleted file mode 100644 index d6c7e58fff2d..000000000000 --- a/python/plugins/processing/r/scripts/F_function_-_distance_from_a_point_to_nearest_event.rsx +++ /dev/null @@ -1,7 +0,0 @@ -##[Example scripts]=group -##points=vector -##showplots -library("maptools") -library("spatstat") -ppp=as(as(points, "SpatialPoints"),"ppp") -plot(envelope(ppp, Fest, nsim=100)) diff --git a/python/plugins/processing/r/scripts/Field_dotplot.rsx b/python/plugins/processing/r/scripts/Field_dotplot.rsx deleted file mode 100644 index bc1407d3228f..000000000000 --- a/python/plugins/processing/r/scripts/Field_dotplot.rsx +++ /dev/null @@ -1,5 +0,0 @@ -##[Example scripts]=group -##showplots -##layer=vector -##field=field layer -dotchart(layer[[field]],main=paste("Dotplot of",field),xlab=paste(field),ylab="Observation number") diff --git a/python/plugins/processing/r/scripts/Field_histogram.rsx b/python/plugins/processing/r/scripts/Field_histogram.rsx deleted file mode 100644 index 78a2ea91f1a1..000000000000 --- a/python/plugins/processing/r/scripts/Field_histogram.rsx +++ /dev/null @@ -1,5 +0,0 @@ -##[Example scripts]=group -##showplots -##layer=vector -##field=field layer -hist(layer[[field]],main=paste("Histogram of",field),xlab=paste(field)) diff --git a/python/plugins/processing/r/scripts/Field_summary_statistics.rsx b/python/plugins/processing/r/scripts/Field_summary_statistics.rsx deleted file mode 100644 index 5c677700a3e3..000000000000 --- a/python/plugins/processing/r/scripts/Field_summary_statistics.rsx +++ /dev/null @@ -1,14 +0,0 @@ -##[Example scripts]=group -##layer=vector -##field=field layer -Summary_statistics<-data.frame(name.i=rbind(length(layer[[field]]), -length(unique(layer[[field]])), -min(layer[[field]]), -max(layer[[field]]), -max(layer[[field]])-min(layer[[field]]), -mean(layer[[field]]), -median(layer[[field]]), -sd(layer[[field]])),row.names=c("Count:","Unique values:","Minimum value:","Maximum value:","Range:","Mean value:","Median value:","Standard deviation:")) -colnames(Summary_statistics)<-c(field) ->Summary_statistics - diff --git a/python/plugins/processing/r/scripts/Field_table_of_counts.rsx b/python/plugins/processing/r/scripts/Field_table_of_counts.rsx deleted file mode 100644 index f2885f8c5519..000000000000 --- a/python/plugins/processing/r/scripts/Field_table_of_counts.rsx +++ /dev/null @@ -1,4 +0,0 @@ -##[Example scripts]=group -##layer=vector -##field=field layer ->table(layer[[field]]) diff --git a/python/plugins/processing/r/scripts/Frequency_table.rsx b/python/plugins/processing/r/scripts/Frequency_table.rsx new file mode 100644 index 000000000000..df91e1d53fb4 --- /dev/null +++ b/python/plugins/processing/r/scripts/Frequency_table.rsx @@ -0,0 +1,4 @@ +##Basic statistics=group +##Layer=vector +##Field=Field Layer +>table(Layer[[Field]]) diff --git a/python/plugins/processing/r/scripts/Frequency_table.rsx.help b/python/plugins/processing/r/scripts/Frequency_table.rsx.help new file mode 100644 index 000000000000..457054d55e3d --- /dev/null +++ b/python/plugins/processing/r/scripts/Frequency_table.rsx.help @@ -0,0 +1,26 @@ +(dp0 +S'ALG_DESC' +p1 +VThis tool builds a frequency table using the table() function. +p2 +sS'R_CONSOLE_OUTPUT' +p3 +VFrequency table. +p4 +sS'ALG_CREATOR' +p5 +VFilipe S. Dias, filipesdias(at)gmail.com +p6 +sS'Layer' +p7 +VA vector layer with a numeric or string field. +p8 +sS'Field' +p9 +VA string or numeric field. +p10 +sS'ALG_HELP_CREATOR' +p11 +VFilipe S. Dias, filipesdias(at)gmail.com +p12 +s. diff --git a/python/plugins/processing/r/scripts/G_function.rsx b/python/plugins/processing/r/scripts/G_function.rsx new file mode 100644 index 000000000000..62a8d9eab497 --- /dev/null +++ b/python/plugins/processing/r/scripts/G_function.rsx @@ -0,0 +1,8 @@ +##Point pattern analysis=group +##Layer=vector +##Nsim=number 10 +##showplots +library("maptools") +library("spatstat") +ppp=as(as(Layer, "SpatialPoints"),"ppp") +plot(envelope(ppp, Gest, nsim=Nsim)) diff --git a/python/plugins/processing/r/scripts/G_function.rsx.help b/python/plugins/processing/r/scripts/G_function.rsx.help new file mode 100644 index 000000000000..3519fbf70765 --- /dev/null +++ b/python/plugins/processing/r/scripts/G_function.rsx.help @@ -0,0 +1,26 @@ +(dp0 +S'ALG_DESC' +p1 +VThis R script computes simulation envelopes of the G(r) - nearest neighbour distance distribution function.\u000a\u000aThe nearest neighbour distance distribution function (also called the \u201cevent-to-event\u201d or \u201cinter-event\u201d distribution) of a point process X is the cumulative distribution function G of the distance from a typical random point of X to the nearest other point of X. An estimate of G derived from a spatial point pattern dataset can be used in exploratory data analysis and formal inference about the pattern. In exploratory analyses, the estimate of G is a useful statistic summarising one aspect of the \u201cclustering\u201d of points. For inferential purposes, the estimate of G is usually compared to the true value of G for a completely random (Poisson) point process, which is where lambda is the intensity (expected number of points per unit area). Deviations between the empirical and theoretical G curves may suggest spatial clustering or spatial regularity.\u000a\u000aR dependencies: library "maptools" and "spatstat" +p2 +sS'ALG_CREATOR' +p3 +VVictor Olaya, volayaf(at)gmail.com +p4 +sS'Layer' +p5 +VA point pattern process. +p6 +sS'Nsim' +p7 +VNumber of simulated point patterns to be generated when computing the envelopes. +p8 +sS'RPLOTS' +p9 +VPlot with the simulation envelopes. +p10 +sS'ALG_HELP_CREATOR' +p11 +VFilipe S. Dias, filipesdias(at)gmail.com +p12 +s. diff --git a/python/plugins/processing/r/scripts/G_function_-_distance_to_nearest_event.rsx b/python/plugins/processing/r/scripts/G_function_-_distance_to_nearest_event.rsx deleted file mode 100644 index e76a04548312..000000000000 --- a/python/plugins/processing/r/scripts/G_function_-_distance_to_nearest_event.rsx +++ /dev/null @@ -1,7 +0,0 @@ -##[Example scripts]=group -##points=vector -##showplots -library("maptools") -library("spatstat") -ppp=as(as(points, "SpatialPoints"),"ppp") -plot(envelope(ppp, Gest, nsim=100)) diff --git a/python/plugins/processing/r/scripts/Histogram.rsx b/python/plugins/processing/r/scripts/Histogram.rsx new file mode 100644 index 000000000000..b8920a65d3e1 --- /dev/null +++ b/python/plugins/processing/r/scripts/Histogram.rsx @@ -0,0 +1,5 @@ +##Vector processing=group +##showplots +##Layer=vector +##Field=Field Layer +hist(Layer[[Field]],main=paste("Histogram of",Field),xlab=paste(Field)) diff --git a/python/plugins/processing/r/scripts/Histogram.rsx.help b/python/plugins/processing/r/scripts/Histogram.rsx.help new file mode 100644 index 000000000000..65175d21ffbf --- /dev/null +++ b/python/plugins/processing/r/scripts/Histogram.rsx.help @@ -0,0 +1,14 @@ +(dp0 +S'Field' +p1 +VA nuneric field. +p2 +sS'ALG_DESC' +p3 +VThis tool creates a histogram of the input numeric field using the hist() function. +p4 +sS'Layer' +p5 +VA vector layer with a numeric field. +p6 +s. diff --git a/python/plugins/processing/r/scripts/K_function_-_Ripley_K.rsx b/python/plugins/processing/r/scripts/K_function_-_Ripley_K.rsx deleted file mode 100644 index 999e69a61de5..000000000000 --- a/python/plugins/processing/r/scripts/K_function_-_Ripley_K.rsx +++ /dev/null @@ -1,7 +0,0 @@ -##[Example scripts]=group -##points=vector -##showplots -library("maptools") -library("spatstat") -ppp=as(as(points, "SpatialPoints"),"ppp") -plot(envelope(ppp, Kest, nsim=100)) diff --git a/python/plugins/processing/r/scripts/Kernel_h_ref.rsx b/python/plugins/processing/r/scripts/Kernel_h_ref.rsx new file mode 100644 index 000000000000..81e810360de9 --- /dev/null +++ b/python/plugins/processing/r/scripts/Kernel_h_ref.rsx @@ -0,0 +1,15 @@ +##Home Range Analysis=group +##Layer=vector +##Field=Field Layer +##Grid=number 10 +##Percentage=number 10 +##Home_ranges=Output vector +##Folder=folder +library(adehabitatHR) +Layer[,Field]->relocs +kud <- kernelUD(relocs, grid=,Grid, h="href") +names(kud)->Names +for(i in 1:length(Names)){ +writeGDAL(kud[[i]],paste(paste(Folder,"/",sep=""),paste(Names[i],".tiff",sep=""), sep=""),drivername="GTiff") +} +Home_ranges<- getverticeshr(kud,percent=Percentage) diff --git a/python/plugins/processing/r/scripts/Kernel_h_ref.rsx.help b/python/plugins/processing/r/scripts/Kernel_h_ref.rsx.help new file mode 100644 index 000000000000..e1ef3148aa83 --- /dev/null +++ b/python/plugins/processing/r/scripts/Kernel_h_ref.rsx.help @@ -0,0 +1,38 @@ +(dp0 +S'ALG_DESC' +p1 +VThis algorithm computes the home range of one or more animals using a kernel density estimator and it uses the ad-hoc method to estimate the "h" parameter (href).\u000a\u000aR depencies: library "adehabitatHR" +p2 +sS'Home_ranges' +p3 +VA vector containing the home ranges corresponding to the smallest area on which the probability of relocating an animal is equal to value chosen for the "Percentage" parameter.\u000a +p4 +sS'ALG_CREATOR' +p5 +VFilipe S. Dias, filipesdias(at)gmail.com \u000a \u000a +p6 +sS'Layer' +p7 +VA vector containing the relocations of one or more animails. +p8 +sS'Field' +p9 +VThe field that contains the unique identifier (type "string") for each animal. +p10 +sS'Grid' +p11 +VThe size of the grid (number of cells) on which the utilization distribution is calculated by the kernel function. +p12 +sS'ALG_HELP_CREATOR' +p13 +VFilipe S. Dias, filipesdias(at)gmail.com +p14 +sS'Folder' +p15 +VThe ouput folder where the rasters containing the utilization distributions generated for each animal by the kernel funciton will be sent. +p16 +sS'Percentage' +p17 +VA single value giving the percentage level for home-range estimation. \u000a\u000aFor example, Percentage= 95 corresponds to the smallest area on which the probability to relocate the animal is equal to 0,95. +p18 +s. diff --git a/python/plugins/processing/r/scripts/Kolmogorov-Smirnov_normality_test.rsx b/python/plugins/processing/r/scripts/Kolmogorov-Smirnov_normality_test.rsx deleted file mode 100644 index 6a9e05e75d43..000000000000 --- a/python/plugins/processing/r/scripts/Kolmogorov-Smirnov_normality_test.rsx +++ /dev/null @@ -1,5 +0,0 @@ -##layer=vector -##field=field layer -##[Example scripts]=group -library(nortest) ->lillie.test(layer[[field]]) \ No newline at end of file diff --git a/python/plugins/processing/r/scripts/Kolmogrov-Smirnov_test.rsx b/python/plugins/processing/r/scripts/Kolmogrov-Smirnov_test.rsx new file mode 100644 index 000000000000..d19a5afa9c6e --- /dev/null +++ b/python/plugins/processing/r/scripts/Kolmogrov-Smirnov_test.rsx @@ -0,0 +1,5 @@ +##Basic statistics=group +##Layer=vector +##Field=Field Layer +library(nortest) +>lillie.test(Layer[[Field]]) diff --git a/python/plugins/processing/r/scripts/Kolmogrov-Smirnov_test.rsx.help b/python/plugins/processing/r/scripts/Kolmogrov-Smirnov_test.rsx.help new file mode 100644 index 000000000000..2b09f219b7bc --- /dev/null +++ b/python/plugins/processing/r/scripts/Kolmogrov-Smirnov_test.rsx.help @@ -0,0 +1,20 @@ +(dp0 +S'Field' +p1 +VA numeric field. +p2 +sS'ALG_DESC' +p3 +VThis script performs the Lilliefors (Kolmogrov-Smirnov) test for the composite hypothesis of normality.\u000a\u000aR dependencies: library "nortest"\u000a\u000a +p4 +sS'R_CONSOLE_OUTPUT' +p5 +VThe results of the Lilliefors (Kolmogrov-Smirnov) test. +p6 +sS'Layer' +p7 +VA vector containing at least one numeric field. +p8 +sNV +p9 +s. diff --git a/python/plugins/processing/r/scripts/Minimum_convex_polygon.rsx b/python/plugins/processing/r/scripts/Minimum_convex_polygon.rsx new file mode 100644 index 000000000000..b306a58224b4 --- /dev/null +++ b/python/plugins/processing/r/scripts/Minimum_convex_polygon.rsx @@ -0,0 +1,7 @@ +##Home Range Analysis=group +##Layer=vector +##Percentage=number 10 +##Field=Field Layer +##Home_ranges=Output vector +library(adehabitatHR) +Home_ranges<-mcp(Layer[,Field],percent=Percentage) diff --git a/python/plugins/processing/r/scripts/Minimum_convex_polygon.rsx.help b/python/plugins/processing/r/scripts/Minimum_convex_polygon.rsx.help new file mode 100644 index 000000000000..815c9238b79d --- /dev/null +++ b/python/plugins/processing/r/scripts/Minimum_convex_polygon.rsx.help @@ -0,0 +1,36 @@ +(dp0 +S'Layer' +p1 +VAn vector layer containing the relocations of one or more animals. +p2 +sS'Home_ranges' +p3 +VThe home ranges of the animals calculated according to the selected "Percentage" parameter. +p4 +sS'ALG_CREATOR' +p5 +VThis algorithm was written by Filipe S. Dias using the functions written by Clement Calenge, creator of the package "adehabitatHR". +p6 +sS'ALG_DESC' +p7 +VThis tool computes the home range of one or more animals with the Minimum Convex Polygon estimator.\u000a\u000aR depencies: library "adehabitatHR" +p8 +sS'Field' +p9 +VA field containing a unique identifier for each animal (type "string").\u000a\u000a\u000a +p10 +sS'ALG_HELP_CREATOR' +p11 +VFilipe S. Dias +p12 +sS'Output' +p13 +VThe ouput is a shapefile containing the home range of each animal. +p14 +sS'Percentage' +p15 +V100 minus the proportion of outliers to be excluded from the computation. E.g. Percentage = 95 means that 5% of the outlier locations will be excluded from the calculations.\u000a\u000a\u000a +p16 +sNV +p17 +s. diff --git a/python/plugins/processing/r/scripts/Monte-Carlo_spatial_randomness.rsx b/python/plugins/processing/r/scripts/Monte-Carlo_spatial_randomness.rsx new file mode 100644 index 000000000000..52ac4b0080ab --- /dev/null +++ b/python/plugins/processing/r/scripts/Monte-Carlo_spatial_randomness.rsx @@ -0,0 +1,12 @@ +##Point pattern analysis=group +##Layer=vector +##Simulations=number 100 +##Optional_plot_name=string +##showplots +library(spatstat) +library(maptools) +sp <- as(Layer, "SpatialPoints") +sp <- as(sp, "ppp") +e <- envelope(sp, Kest, nsim = Simulations) +>e +plot(e, main = Optional_plot_name) diff --git a/python/plugins/processing/r/scripts/Monte-Carlo_spatial_randomness.rsx.help b/python/plugins/processing/r/scripts/Monte-Carlo_spatial_randomness.rsx.help new file mode 100644 index 000000000000..edba018fca5b --- /dev/null +++ b/python/plugins/processing/r/scripts/Monte-Carlo_spatial_randomness.rsx.help @@ -0,0 +1,34 @@ +(dp0 +S'ALG_DESC' +p1 +VThis is a Monte Carlo test for the point patterns. It is based on simulations from the null hypothesis. It generates randomly dinstributed points within the study region and uses K-function for each set of generated points and compares them to the K-function for the original set of points. Detailed description can be found in correspondin section of this book: http://www.csiro.au/resources/pf16h.\u000a\u000aThis script will provide both graphical ('R plots') and verbose ('R console output') output.\u000a\u000aR dependencies: library "maptools" and "spatstat" +p2 +sS'R_CONSOLE_OUTPUT' +p3 +VDescription of the test results. +p4 +sS'Layer' +p5 +VPoint layer to be tested. +p6 +sS'ALG_CREATOR' +p7 +VYury Ryabov\u000ariabovv at gmail dot com\u000a2013\u000aGPLv3 +p8 +sS'RPLOTS' +p9 +VGraph showing test results. +p10 +sS'ALG_HELP_CREATOR' +p11 +VYury Ryabov\u000ariabovv at gmail dot com\u000a2013\u000aCC-0 +p12 +sS'Simulations' +p13 +VNumber of simulations for random points distributions. Positive integer must be provided here. +p14 +sS'Optional_plot_name' +p15 +VAn Optional name for the graph. It is Ok to leave this field blank. +p16 +s. diff --git a/python/plugins/processing/r/scripts/Quadrat_analysis.rsx b/python/plugins/processing/r/scripts/Quadrat_analysis.rsx index db5609253865..5632d8c3729b 100644 --- a/python/plugins/processing/r/scripts/Quadrat_analysis.rsx +++ b/python/plugins/processing/r/scripts/Quadrat_analysis.rsx @@ -1,10 +1,10 @@ -##[Example scripts]=group -##points=vector +##Point pattern analysis=group +##Layer=vector ##showplots library("maptools") library("spatstat") -ppp=as(as(points, "SpatialPoints"),"ppp") +ppp=as(as(Layer, "SpatialPoints"),"ppp") qc=quadratcount(ppp) -plot(points) +plot(Layer) plot(qc, add=TRUE) >quadrat.test(ppp); diff --git a/python/plugins/processing/r/scripts/Quadrat_analysis.rsx.help b/python/plugins/processing/r/scripts/Quadrat_analysis.rsx.help new file mode 100644 index 000000000000..a4377111e974 --- /dev/null +++ b/python/plugins/processing/r/scripts/Quadrat_analysis.rsx.help @@ -0,0 +1,26 @@ +(dp0 +S'ALG_DESC' +p1 +VThe script divides the window into quadrats and counts the numbers of points in each quadrat. Then it performs a test of Complete Spatial Randomness based on the quadrat counts.\u000a\u000aR dependencies: library "maptools" and "spatstat" +p2 +sS'R_CONSOLE_OUTPUT' +p3 +VThe results of the Chi-squared test of complete spatial randomness (CSR) using quadrat counts.\u000a +p4 +sS'ALG_CREATOR' +p5 +VVictor Olaya, volayaf(at)gmail.com +p6 +sS'Layer' +p7 +VA vector containg a point pattern. +p8 +sS'RPLOTS' +p9 +VA display containing the number of points per quadrat. +p10 +sS'ALG_HELP_CREATOR' +p11 +VFilipe S. Dias, filipesdias(at)gmail.com +p12 +s. diff --git a/python/plugins/processing/r/scripts/Random_sampling_grid.rsx b/python/plugins/processing/r/scripts/Random_sampling_grid.rsx new file mode 100644 index 000000000000..910023dfe5fe --- /dev/null +++ b/python/plugins/processing/r/scripts/Random_sampling_grid.rsx @@ -0,0 +1,6 @@ +##Point pattern analysis=group +##Layer=vector +##Size=number 10 +##Output= output vector +pts=spsample(Layer,Size,type="random") +Output=SpatialPointsDataFrame(pts, as.data.frame(pts)) diff --git a/python/plugins/processing/r/scripts/Random_sampling_grid.rsx.help b/python/plugins/processing/r/scripts/Random_sampling_grid.rsx.help new file mode 100644 index 000000000000..50ab3a1c73ba --- /dev/null +++ b/python/plugins/processing/r/scripts/Random_sampling_grid.rsx.help @@ -0,0 +1,26 @@ +(dp0 +S'ALG_DESC' +p1 +VThis scripts samples point location within a given polygon(s) using a random sampling method. The used methods assume that the geometry used is not spherical, so objects should be in planar coordinates.\u000a\u000a +p2 +sS'ALG_CREATOR' +p3 +VVictor Olaya +p4 +sS'Layer' +p5 +VA vector layer containing polygons. +p6 +sS'ALG_HELP_CREATOR' +p7 +VFilipe Dias +p8 +sS'Output' +p9 +VRandomly generated random points. +p10 +sS'Size' +p11 +VNumber of sample points to be randomly generated +p12 +s. diff --git a/python/plugins/processing/r/scripts/Raster_histogram.rsx b/python/plugins/processing/r/scripts/Raster_histogram.rsx index 1d43412b176b..63cd7384d71a 100644 --- a/python/plugins/processing/r/scripts/Raster_histogram.rsx +++ b/python/plugins/processing/r/scripts/Raster_histogram.rsx @@ -1,4 +1,4 @@ -##[Example scripts]=group -##layer = raster +##Raster processing=group +##Layer = raster ##showplots -hist(as.matrix(layer)) +hist(as.matrix(Layer),main="Histogram",xlab="Layer") diff --git a/python/plugins/processing/r/scripts/Raster_histogram.rsx.help b/python/plugins/processing/r/scripts/Raster_histogram.rsx.help new file mode 100644 index 000000000000..9ec4bf9581fb --- /dev/null +++ b/python/plugins/processing/r/scripts/Raster_histogram.rsx.help @@ -0,0 +1,22 @@ +(dp0 +S'ALG_CREATOR' +p1 +VVictor Olaya, volayaf(at)gmail.com +p2 +sS'ALG_DESC' +p3 +VThe script creates a raster histogram. +p4 +sS'Layer ' +p5 +VAn input raster. +p6 +sS'RPLOTS' +p7 +VHistogram +p8 +sS'ALG_HELP_CREATOR' +p9 +VFilipe S. Dias, filipesdias(at)gmail.co +p10 +s. diff --git a/python/plugins/processing/r/scripts/Regular_sampling_grid.rsx b/python/plugins/processing/r/scripts/Regular_sampling_grid.rsx new file mode 100644 index 000000000000..066c5d45b9a9 --- /dev/null +++ b/python/plugins/processing/r/scripts/Regular_sampling_grid.rsx @@ -0,0 +1,6 @@ +##Point pattern analysis=group +##Layer=vector +##Size=number 10 +##Output= output vector +pts=spsample(Layer,Size,type="regular") +Output=SpatialPointsDataFrame(pts, as.data.frame(pts)) diff --git a/python/plugins/processing/r/scripts/Regular_sampling_grid.rsx.help b/python/plugins/processing/r/scripts/Regular_sampling_grid.rsx.help new file mode 100644 index 000000000000..6b0640345220 --- /dev/null +++ b/python/plugins/processing/r/scripts/Regular_sampling_grid.rsx.help @@ -0,0 +1,18 @@ +(dp0 +S'Output' +p1 +VSampled points +p2 +sS'ALG_DESC' +p3 +VThis scripts samples point location within a given polygon(s) using a regular (systematically aligned) sampling method. The methods used assume that the geometry used is not spherical, so objects should be in planar coordinates. +p4 +sS'Layer' +p5 +VA vector layer containing polygons.\u000a +p6 +sS'Size' +p7 +VNumber of sample points to be generated.\u000a +p8 +s. diff --git a/python/plugins/processing/r/scripts/Relative_distribution_(distance_covariate).rsx b/python/plugins/processing/r/scripts/Relative_distribution_(distance_covariate).rsx new file mode 100644 index 000000000000..9494ce552b68 --- /dev/null +++ b/python/plugins/processing/r/scripts/Relative_distribution_(distance_covariate).rsx @@ -0,0 +1,42 @@ +(dp0 +S'ALG_DESC' +p1 +VThis algorithm creates a graph that demonstrates the dependency of the intensity of the point process on the value of covariate. In this algorithm the covariate is the distance to the certain objects. The functionality is based on 'rhohat' function of the 'spatstat' package. \u000a\u000aR dependencies: library "maptools", "spatstat" and "rpanel". +p2 +sS'ALG_CREATOR' +p3 +VYury Ryabov\u000a2013\u000ariabovvv@gmail.com +p4 +sS'Layer' +p5 +VThe point process which distribution will be investigated. +p6 +sS'Covariate_name' +p7 +VThis field is mandatory. Enter the name of the covariate. It will appear at the graph. +p8 +sS'Legend_position' +p9 +VThis field defines the position of the legend at the graph. 'float' means that the legend will be placed at the position that would not overlap the graph itself (or will try at least). Other options are: 'topleft', 'topright', 'bottomleft', 'bottomright'. +p10 +sS'x_label' +p11 +VOptional label for the X axis. Note that units at the X axis will be the same as in the input layers. +p12 +sS'RPLOTS' +p13 +VThe empirical graph of the dependency of the intensity of the point process on the distance to the given objects. +p14 +sS'ALG_HELP_CREATOR' +p15 +VYury Ryabov\u000a2013\u000ariabovvv@gmail.com +p16 +sS'Plot_name' +p17 +VOptional plot name. +p18 +sS'Covariate' +p19 +VThe set of objects the distance from which will be calculated and used as a spatial covariate to the point process. +p20 +s. diff --git a/python/plugins/processing/r/scripts/Relative_distribution_(distance_covariate).rsx.help b/python/plugins/processing/r/scripts/Relative_distribution_(distance_covariate).rsx.help new file mode 100644 index 000000000000..9494ce552b68 --- /dev/null +++ b/python/plugins/processing/r/scripts/Relative_distribution_(distance_covariate).rsx.help @@ -0,0 +1,42 @@ +(dp0 +S'ALG_DESC' +p1 +VThis algorithm creates a graph that demonstrates the dependency of the intensity of the point process on the value of covariate. In this algorithm the covariate is the distance to the certain objects. The functionality is based on 'rhohat' function of the 'spatstat' package. \u000a\u000aR dependencies: library "maptools", "spatstat" and "rpanel". +p2 +sS'ALG_CREATOR' +p3 +VYury Ryabov\u000a2013\u000ariabovvv@gmail.com +p4 +sS'Layer' +p5 +VThe point process which distribution will be investigated. +p6 +sS'Covariate_name' +p7 +VThis field is mandatory. Enter the name of the covariate. It will appear at the graph. +p8 +sS'Legend_position' +p9 +VThis field defines the position of the legend at the graph. 'float' means that the legend will be placed at the position that would not overlap the graph itself (or will try at least). Other options are: 'topleft', 'topright', 'bottomleft', 'bottomright'. +p10 +sS'x_label' +p11 +VOptional label for the X axis. Note that units at the X axis will be the same as in the input layers. +p12 +sS'RPLOTS' +p13 +VThe empirical graph of the dependency of the intensity of the point process on the distance to the given objects. +p14 +sS'ALG_HELP_CREATOR' +p15 +VYury Ryabov\u000a2013\u000ariabovvv@gmail.com +p16 +sS'Plot_name' +p17 +VOptional plot name. +p18 +sS'Covariate' +p19 +VThe set of objects the distance from which will be calculated and used as a spatial covariate to the point process. +p20 +s. diff --git a/python/plugins/processing/r/scripts/Relative_distribution_(raster_covariate).rsx b/python/plugins/processing/r/scripts/Relative_distribution_(raster_covariate).rsx new file mode 100644 index 000000000000..7564fffab7cd --- /dev/null +++ b/python/plugins/processing/r/scripts/Relative_distribution_(raster_covariate).rsx @@ -0,0 +1,29 @@ +##Point pattern analysis=group +##points=vector +##covariate=raster +##covariate_name=string mandatory_covariate_name_(no_spaces) +##x_label=string +##plot_name=string +##legend_position=string float +##showplots +library(geostatsp) +library(maptools) +library(rpanel) +if (covariate_name == "") { +rp.messagebox('"covariate name" must not be empty!', title = 'oops!') +} +else { +S <- points +SP <- as(S, "SpatialPoints") +P <- as(SP, "ppp") +covariate <- raster(covariate, layer = 1) +covariate <- as.im(covariate) +library(spatstat) +S <- points +SP <- as(S, "SpatialPoints") +P <- as(SP, "ppp") +plot(rhohat(P, covariate, covname=covariate_name), xlab= x_label, +legendpos = legend_position, +legendargs=list(bg="transparent"), +main = plot_name) +} diff --git a/python/plugins/processing/r/scripts/Relative_distribution_(raster_covariate).rsx.help b/python/plugins/processing/r/scripts/Relative_distribution_(raster_covariate).rsx.help new file mode 100644 index 000000000000..2221947dc4d5 --- /dev/null +++ b/python/plugins/processing/r/scripts/Relative_distribution_(raster_covariate).rsx.help @@ -0,0 +1,42 @@ +(dp0 +S'ALG_DESC' +p1 +VThis algorithm creates a graph that demonstrates the dependency of the intensity of the point process on the value of the given covariate. In this algorithm the covariate must be represented as a raster. The functionality is based on 'rhohat' function of the 'spatstat' package. \u000a\u000aR dependencies: library "geostatsp", "maptools", "rpanel", "spatstat" +p2 +sS'legend_position' +p3 +VThis field defines the position of the legend at the graph. 'float' means that the legend will be placed at the position that would not overlap the graph itself (or will try at least). Other options are: 'topleft', 'topright', 'bottomleft', 'bottomright'. +p4 +sS'ALG_CREATOR' +p5 +VYury Ryabov\u000a2013\u000ariabovvv@gmail.com +p6 +sS'covariate_name' +p7 +VThis field is mandatory. Enter the name of the covariate. It will appear at the graph. +p8 +sS'x_label' +p9 +VOptional label for the X axis. Note that units at the X axis will be the same as in the input layers. +p10 +sS'points' +p11 +VThe point process which distribution will be investigated. +p12 +sS'RPLOTS' +p13 +VThe empirical graph of the dependency of the intensity of the point process on the distance to the given objects. +p14 +sS'ALG_HELP_CREATOR' +p15 +VYury Ryabov\u000a2013\u000ariabovvv@gmail.com +p16 +sS'plot_name' +p17 +VOptional plot name. +p18 +sS'covariate' +p19 +VThe spatial covariate to the point process. The raster must not have discrete values, i.e. it may not be classified. Only rasters that represent continious phenomena (e.g. DEM, distance maps, etc.) are allowed. Though classified rasters will be processed if supplied, but the results will be meaningless. +p20 +s. diff --git a/python/plugins/processing/r/scripts/Ripley_-_Rasson_spatial_domain.rsx b/python/plugins/processing/r/scripts/Ripley_-_Rasson_spatial_domain.rsx new file mode 100644 index 000000000000..e92613d917cd --- /dev/null +++ b/python/plugins/processing/r/scripts/Ripley_-_Rasson_spatial_domain.rsx @@ -0,0 +1,12 @@ +##Point pattern analysis=group +##Layer=vector +##Output=output vector +library("spatstat") +library("maptools") +proj4string(Layer)->crs +spatpoints = as(Layer,"SpatialPoints") +ripras=ripras(as(spatpoints,"ppp")) +polyg=as(ripras,"SpatialPolygons") +Output1= SpatialPolygonsDataFrame(polyg, data.frame(1)) +proj4string(Output1)<-crs +Output<-Output1 diff --git a/python/plugins/processing/r/scripts/Ripley_-_Rasson_spatial_domain.rsx.help b/python/plugins/processing/r/scripts/Ripley_-_Rasson_spatial_domain.rsx.help new file mode 100644 index 000000000000..12274ed04710 --- /dev/null +++ b/python/plugins/processing/r/scripts/Ripley_-_Rasson_spatial_domain.rsx.help @@ -0,0 +1,22 @@ +(dp0 +S'ALG_CREATOR' +p1 +VVictor Olaya, volayaf(at)gmail.com +p2 +sS'Output' +p3 +VRiplay-Rasson estimate of the spatial domain. +p4 +sS'ALG_DESC' +p5 +VThis script computes the Ripley-Rasson estimate of the spatial domain from which an observed pattern of points came.\u000a\u000aR dependencies: library "maptools" and "spatstat" +p6 +sS'Layer' +p7 +VA vector layer contain a point pattern. +p8 +sS'ALG_HELP_CREATOR' +p9 +VFilipe S. Dias, filipesdias(at)gmail.com +p10 +s. diff --git a/python/plugins/processing/r/scripts/Single-linkage_cluster_analysis.rsx b/python/plugins/processing/r/scripts/Single-linkage_cluster_analysis.rsx new file mode 100644 index 000000000000..83e5bb66533d --- /dev/null +++ b/python/plugins/processing/r/scripts/Single-linkage_cluster_analysis.rsx @@ -0,0 +1,12 @@ +##Home Range Analysis=group +##showplots +##Layer=vector +##Field=Field Layer +##Percentage=number 10 +##Home_ranges=Output vector +library(adehabitatHR) +uu<-clusthr(Layer[,Field]) +Home_ranges<-getverticeshr(uu,percent=Percentage) +ii <- MCHu2hrsize(uu, percent=seq(50, 100, by=5)) +par(mar=c(2,2,2,2)) +plot(ii) diff --git a/python/plugins/processing/r/scripts/Single-linkage_cluster_analysis.rsx.help b/python/plugins/processing/r/scripts/Single-linkage_cluster_analysis.rsx.help new file mode 100644 index 000000000000..ae9f4918afba --- /dev/null +++ b/python/plugins/processing/r/scripts/Single-linkage_cluster_analysis.rsx.help @@ -0,0 +1,34 @@ +(dp0 +S'ALG_DESC' +p1 +VThis script estimates the home range of one or more animals by single-linkage cluster analysis.\u000a\u000aR depencies: library "adehabitatHR" +p2 +sS'Home_ranges' +p3 +VA multipart vector layer containing the home ranges of each animal, according to the selected "Percentage" value. +p4 +sS'ALG_CREATOR' +p5 +VFilipe S. Dias, filipesdias(at)gmail.com +p6 +sS'Layer' +p7 +VA vector layer containing the relocations of one or more animals. +p8 +sS'Field' +p9 +VThe field that contains the unique identifier (type "string") for each animal. +p10 +sS'RPLOTS' +p11 +VA plot showing the relationship between the home range size and the percentage of relocations included in the home range.\u000a +p12 +sS'ALG_HELP_CREATOR' +p13 +VFilipe S. Dias, filipesdias(at)gmail.com +p14 +sS'Percentage' +p15 +VPercentage of the relocations used in the calculations. +p16 +s. diff --git a/python/plugins/processing/r/scripts/Summary_statistics.rsx b/python/plugins/processing/r/scripts/Summary_statistics.rsx new file mode 100644 index 000000000000..43786d448d5a --- /dev/null +++ b/python/plugins/processing/r/scripts/Summary_statistics.rsx @@ -0,0 +1,14 @@ +##Basic statistics=group +##Layer=vector +##Field=Field Layer +Summary_statistics<-data.frame(rbind(sum(Layer[[Field]]), +length(Layer[[Field]]), +length(unique(Layer[[Field]])), +min(Layer[[Field]]), +max(Layer[[Field]]), +max(Layer[[Field]])-min(Layer[[Field]]), +mean(Layer[[Field]]), +median(Layer[[Field]]), +sd(Layer[[Field]])),row.names=c("Sum:","Count:","Unique values:","Minimum value:","Maximum value:","Range:","Mean value:","Median value:","Standard deviation:")) +colnames(Summary_statistics)<-c(Field) +>Summary_statistics diff --git a/python/plugins/processing/r/scripts/Summary_statistics.rsx.help b/python/plugins/processing/r/scripts/Summary_statistics.rsx.help new file mode 100644 index 000000000000..804cea2bb633 --- /dev/null +++ b/python/plugins/processing/r/scripts/Summary_statistics.rsx.help @@ -0,0 +1,26 @@ +(dp0 +S'ALG_DESC' +p1 +VThis tool calculates the following summary statistics for a numeric field: (1) Sum, (2) Count, (3) Unique values, (4) Minimum value, (5) Maximum value, (6) Range, (7) Mean, (8) Median and (9) Standard deviation.\u000a\u000a +p2 +sS'R_CONSOLE_OUTPUT' +p3 +VSummary statistics table +p4 +sS'ALG_CREATOR' +p5 +VFilipe S. Dias, filipesdias(at)gmail.com +p6 +sS'Layer' +p7 +VInput vector with at least one numeric field +p8 +sS'Field' +p9 +VNumeric field +p10 +sS'ALG_HELP_CREATOR' +p11 +VFilipe S. Dias, filipesdias(at)gmail.com +p12 +s. diff --git a/python/plugins/processing/script/ScriptAlgorithm.py b/python/plugins/processing/script/ScriptAlgorithm.py index 9218b32f4050..83bac74e7f8a 100644 --- a/python/plugins/processing/script/ScriptAlgorithm.py +++ b/python/plugins/processing/script/ScriptAlgorithm.py @@ -35,6 +35,7 @@ from processing.parameters.ParameterVector import ParameterVector from processing.parameters.ParameterMultipleInput import ParameterMultipleInput from processing.parameters.ParameterString import ParameterString +from processing.parameters.ParameterCrs import ParameterCrs from processing.parameters.ParameterNumber import ParameterNumber from processing.parameters.ParameterBoolean import ParameterBoolean from processing.parameters.ParameterSelection import ParameterSelection @@ -127,7 +128,7 @@ def processParameterLine(self, line): if '|' in line: self.processDescriptionParameterLine(line) return - tokens = line.split('=') + tokens = line.split('=', 1) desc = self.createDescriptiveName(tokens[0]) if tokens[1].lower().strip() == 'group': self.group = tokens[0] @@ -186,6 +187,11 @@ def processParameterLine(self, line): elif tokens[1].lower().strip().startswith('string'): default = tokens[1].strip()[len('string') + 1:] param = ParameterString(tokens[0], desc, default) + elif tokens[1].lower().strip().startswith('crs'): + default = tokens[1].strip()[len('crs') + 1:] + if not default: + default = 'EPSG:4326' + param = ParameterCrs(tokens[0], desc, default) elif tokens[1].lower().strip().startswith('output raster'): out = OutputRaster() elif tokens[1].lower().strip().startswith('output vector'): diff --git a/scripts/tsstat.pl b/scripts/tsstat.pl index 6ce358ba1ea4..8e2f98cbb747 100755 --- a/scripts/tsstat.pl +++ b/scripts/tsstat.pl @@ -51,7 +51,7 @@ fi => 'Kari Salovaara, Marko Järvenpää', fr => 'Eve Rousseau, Marc Monnerat, Lionel Roubeyrie, Jean Roc Morreale, Benjamin Bohard, Jeremy Garniaux, Yves Jacolin, Benjamin Lerre, Stéphane Morel, Marie Silvestre, Tahir Tamba, Xavier M, Mayeul Kauffmann, Mehdi Semchaoui, Robin Cura, Etienne Tourigny, Mathieu Bossaert', gl => 'Xan Vieiro', - hi => '', + hi => 'Harish Kumar Solanki', hu => 'Zoltan Siki', hr_HR => 'Zoran Jankovic', is => 'Thordur Ivarsson', diff --git a/src/core/qgscoordinatereferencesystem.cpp b/src/core/qgscoordinatereferencesystem.cpp index ac4fc8d0b2c7..f3f2e5e21ab7 100644 --- a/src/core/qgscoordinatereferencesystem.cpp +++ b/src/core/qgscoordinatereferencesystem.cpp @@ -2019,6 +2019,7 @@ bool QgsCoordinateReferenceSystem::syncDatumTransform( const QString& dbPath ) sql = QString( "UPDATE tbl_datum_transform SET source_crs = %2, target_crs = %3, coord_op_method = %4, p1 = %5, p2 = %6, p3 = %7, p4 = %8, p5 = %9, p6 = %10, p7 = %11 WHERE coord_op = %1" ) .arg( coord_op ).arg( source_crs ).arg( target_crs ).arg( coord_op_method ).arg( p1 ).arg( p2 ).arg( p3 ).arg( p4 ).arg( p5 ).arg( p6 ).arg( p7 ); } + else { //not yet in database, do insert QgsDebugMsg( "Trying datum transform insert" ); diff --git a/src/core/qgsexpression.cpp b/src/core/qgsexpression.cpp index d4661ed075cc..b8a72c438bd4 100644 --- a/src/core/qgsexpression.cpp +++ b/src/core/qgsexpression.cpp @@ -1619,6 +1619,7 @@ QgsExpression::QgsExpression( const QString& expr ) : mRowNumber( 0 ) , mScale( 0 ) , mCalc( 0 ) + , mExp( expr ) { mRootNode = ::parseExpression( expr, mParserErrorString ); diff --git a/src/core/qgsexpression.h b/src/core/qgsexpression.h index daede0f200b7..da5e17f42f2a 100644 --- a/src/core/qgsexpression.h +++ b/src/core/qgsexpression.h @@ -151,10 +151,12 @@ class CORE_EXPORT QgsExpression int scale() {return mScale; } - //! Alias for {@link dump()} - const QString expression() const { return dump(); } + //! Return the expression string that was given when created. + const QString expression() const { return mExp; } - //! Return the parsed expression as a string - useful for debugging + //! Return the a debugging string of the expression. + //! This can be used for debugging. Use {@link expression()} + //! if you need the full expression string. QString dump() const; //! Return calculator used for distance and area calculations @@ -608,6 +610,7 @@ class CORE_EXPORT QgsExpression int mRowNumber; double mScale; + QString mExp; static QMap gmSpecialColumns; QgsDistanceArea *mCalc; diff --git a/src/core/qgsfeaturerequest.cpp b/src/core/qgsfeaturerequest.cpp index fcdd843b44fa..c446fd1a4d88 100644 --- a/src/core/qgsfeaturerequest.cpp +++ b/src/core/qgsfeaturerequest.cpp @@ -54,7 +54,7 @@ QgsFeatureRequest::QgsFeatureRequest( const QgsRectangle& rect ) QgsFeatureRequest::QgsFeatureRequest( const QgsExpression& expr ) : mFilter( FilterExpression ) - , mFilterExpression( new QgsExpression( expr.dump() ) ) + , mFilterExpression( new QgsExpression( expr.expression() ) ) , mFlags( 0 ) , mMapCoordTransform( NULL ) , mMapToPixel( NULL ) @@ -76,7 +76,7 @@ QgsFeatureRequest& QgsFeatureRequest::operator=( const QgsFeatureRequest & rh ) mFilterFids = rh.mFilterFids; if ( rh.mFilterExpression ) { - mFilterExpression = new QgsExpression( rh.mFilterExpression->dump() ); + mFilterExpression = new QgsExpression( rh.mFilterExpression->expression() ); } else { diff --git a/src/core/qgsproject.cpp b/src/core/qgsproject.cpp index 6644f58ba8da..30616c39d8fd 100644 --- a/src/core/qgsproject.cpp +++ b/src/core/qgsproject.cpp @@ -936,6 +936,15 @@ bool QgsProject::write() { clearError(); + // Create backup file + if ( QFile::exists( fileName() ) ) + { + QString backup = fileName() + "~"; + if ( QFile::exists( backup ) ) + QFile::remove( backup ); + QFile::rename( fileName(), backup ); + } + // if we have problems creating or otherwise writing to the project file, // let's find out up front before we go through all the hand-waving // necessary to create all the Dom objects diff --git a/src/core/symbology-ng/qgsellipsesymbollayerv2.cpp b/src/core/symbology-ng/qgsellipsesymbollayerv2.cpp index 863a3b32e0a3..4566e513b2d0 100644 --- a/src/core/symbology-ng/qgsellipsesymbollayerv2.cpp +++ b/src/core/symbology-ng/qgsellipsesymbollayerv2.cpp @@ -308,7 +308,7 @@ void QgsEllipseSymbolLayerV2::writeSldMarker( QDomDocument &doc, QDomElement &el { if ( rotationExpression ) - angleFunc = rotationExpression->dump(); + angleFunc = rotationExpression->expression(); else if ( !qgsDoubleNear( mAngle, 0.0 ) ) angleFunc = QString::number( mAngle ); } @@ -316,7 +316,7 @@ void QgsEllipseSymbolLayerV2::writeSldMarker( QDomDocument &doc, QDomElement &el { // the symbol has an angle and the symbol layer have a rotation // property set - angleFunc = QString( "%1 + %2" ).arg( angleFunc ).arg( rotationExpression->dump() ); + angleFunc = QString( "%1 + %2" ).arg( angleFunc ).arg( rotationExpression->expression() ); } else if ( !qgsDoubleNear( mAngle, 0.0 ) ) { diff --git a/src/core/symbology-ng/qgsrulebasedrendererv2.cpp b/src/core/symbology-ng/qgsrulebasedrendererv2.cpp index 89655253faa4..0e7ebc244da7 100644 --- a/src/core/symbology-ng/qgsrulebasedrendererv2.cpp +++ b/src/core/symbology-ng/qgsrulebasedrendererv2.cpp @@ -627,7 +627,7 @@ QgsRuleBasedRendererV2::Rule* QgsRuleBasedRendererV2::Rule::createFromSld( QDomE } else { - filterExp = filter->dump(); + filterExp = filter->expression(); } delete filter; } diff --git a/src/core/symbology-ng/qgssymbollayerv2utils.cpp b/src/core/symbology-ng/qgssymbollayerv2utils.cpp index b5f2f2a39cf0..cf2b63d112bd 100644 --- a/src/core/symbology-ng/qgssymbollayerv2utils.cpp +++ b/src/core/symbology-ng/qgssymbollayerv2utils.cpp @@ -2259,7 +2259,7 @@ bool QgsSymbolLayerV2Utils::functionFromSldElement( QDomElement &element, QStrin } else { - function = expr->dump(); + function = expr->expression(); } delete expr; diff --git a/src/gui/qgisinterface.h b/src/gui/qgisinterface.h index 75a357f4b29c..fb789030c213 100644 --- a/src/gui/qgisinterface.h +++ b/src/gui/qgisinterface.h @@ -473,6 +473,8 @@ class GUI_EXPORT QgisInterface : public QObject virtual QAction *actionSelectRadius() = 0; //! Get access to the native identify action. Call trigger() on it to set the default identify map tool. virtual QAction *actionIdentify() = 0; + //! Get access to the native run action feature action. Call trigger() on it to set the default run feature action map tool. + virtual QAction *actionFeatureAction() = 0; //! Get access to the native measure action. Call trigger() on it to set the default measure map tool. virtual QAction *actionMeasure() = 0; //! Get access to the native measure area action. Call trigger() on it to set the default measure area map tool. diff --git a/src/gui/qgsdatumtransformdialog.cpp b/src/gui/qgsdatumtransformdialog.cpp index c163320c60ed..e0775511608b 100644 --- a/src/gui/qgsdatumtransformdialog.cpp +++ b/src/gui/qgsdatumtransformdialog.cpp @@ -1,5 +1,23 @@ +/*************************************************************************** + qgsdatumtransformdialog.cpp + --------------------------- + begin : November 2013 + copyright : (C) 2013 by Marco Hugentobler + email : marco.hugentobler at sourcepole dot ch + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + #include "qgsdatumtransformdialog.h" #include "qgscoordinatetransform.h" +#include QgsDatumTransformDialog::QgsDatumTransformDialog( const QString& layerName, const QList< QList< int > >& dt, QWidget* parent, Qt::WindowFlags f ): QDialog( parent, f ) { @@ -9,6 +27,8 @@ QgsDatumTransformDialog::QgsDatumTransformDialog( const QString& layerName, cons for ( ; it != dt.constEnd(); ++it ) { QTreeWidgetItem* item = new QTreeWidgetItem(); + bool itemDisabled = false; + for ( int i = 0; i < 2; ++i ) { if ( i >= it->size() ) @@ -22,7 +42,13 @@ QgsDatumTransformDialog::QgsDatumTransformDialog( const QString& layerName, cons { item->setText( i, QgsCoordinateTransform::datumTransformString( nr ) ); } + + if ( gridShiftTransformation( item->text( i ) ) && !testGridShiftFileAvailability( item, i ) ) + { + itemDisabled = true; + } } + item->setDisabled( itemDisabled ); mDatumTransformTreeWidget->addTopLevelItem( item ); } } @@ -58,3 +84,57 @@ bool QgsDatumTransformDialog::rememberSelection() const { return mRememberSelectionCheckBox->isChecked(); } + +bool QgsDatumTransformDialog::gridShiftTransformation( const QString& itemText ) const +{ + return ( !itemText.isEmpty() && !itemText.contains( "towgs84", Qt::CaseInsensitive ) ); +} + +bool QgsDatumTransformDialog::testGridShiftFileAvailability( QTreeWidgetItem* item, int col ) const +{ + if ( !item ) + { + return true; + } + + QString itemText = item->text( col ); + if ( itemText.isEmpty() ) + { + return true; + } + + char* projLib = getenv( "PROJ_LIB" ); + if ( !projLib ) //no information about installation directory + { + return true; + } + + QStringList itemEqualSplit = itemText.split( "=" ); + QString filename; + for ( int i = 1; i < itemEqualSplit.size(); ++i ) + { + if ( i > 1 ) + { + filename.append( "=" ); + } + filename.append( itemEqualSplit.at( i ) ); + } + + QDir projDir( projLib ); + if ( projDir.exists() ) + { + //look if filename in directory + QStringList fileList = projDir.entryList(); + QStringList::const_iterator fileIt = fileList.constBegin(); + for ( ; fileIt != fileList.constEnd(); ++fileIt ) + { + if ( *fileIt == filename ) + { + return true; + } + } + item->setToolTip( col, tr( "File '%1' not found in directory '%2'" ).arg( filename ).arg( projDir.absolutePath() ) ); + return false; //not found in PROJ_LIB directory + } + return true; +} diff --git a/src/gui/qgsdatumtransformdialog.h b/src/gui/qgsdatumtransformdialog.h index 9a596f075724..2efb565a3c75 100644 --- a/src/gui/qgsdatumtransformdialog.h +++ b/src/gui/qgsdatumtransformdialog.h @@ -1,3 +1,20 @@ +/*************************************************************************** + qgsdatumtransformdialog.h + ------------------------- + begin : November 2013 + copyright : (C) 2013 by Marco Hugentobler + email : marco.hugentobler at sourcepole dot ch + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + #ifndef QGSDATUMTRANSFORMDIALOG_H #define QGSDATUMTRANSFORMDIALOG_H @@ -15,6 +32,9 @@ class GUI_EXPORT QgsDatumTransformDialog: public QDialog, private Ui::QgsDatumTr private: QgsDatumTransformDialog(); + bool gridShiftTransformation( const QString& itemText ) const; + /**Returns false if the location of the grid shift files is known (PROJ_LIB) and the shift file is not there*/ + bool testGridShiftFileAvailability( QTreeWidgetItem* item, int col ) const; }; #endif // QGSDATUMTRANSFORMDIALOG_H diff --git a/src/plugins/georeferencer/qgsgeorefplugingui.cpp b/src/plugins/georeferencer/qgsgeorefplugingui.cpp index 4647c80781f0..caf4679e76dc 100644 --- a/src/plugins/georeferencer/qgsgeorefplugingui.cpp +++ b/src/plugins/georeferencer/qgsgeorefplugingui.cpp @@ -800,7 +800,7 @@ void QgsGeorefPluginGui::layerWillBeRemoved( QString theLayerId ) void QgsGeorefPluginGui::createActions() { // File actions - mActionOpenRaster->setIcon( getThemeIcon( "/mActionOpenRaster.png" ) ); + mActionOpenRaster->setIcon( getThemeIcon( "/mActionAddRasterLayer.svg" ) ); connect( mActionOpenRaster, SIGNAL( triggered() ), this, SLOT( openRaster() ) ); mActionStartGeoref->setIcon( getThemeIcon( "/mActionStartGeoref.png" ) ); @@ -1076,7 +1076,7 @@ void QgsGeorefPluginGui::updateIconTheme( QString theme ) { Q_UNUSED( theme ); // File actions - mActionOpenRaster->setIcon( getThemeIcon( "/mActionOpenRaster.png" ) ); + mActionOpenRaster->setIcon( getThemeIcon( "/mActionAddRasterLayer.svg" ) ); mActionStartGeoref->setIcon( getThemeIcon( "/mActionStartGeoref.png" ) ); mActionGDALScript->setIcon( getThemeIcon( "/mActionGDALScript.png" ) ); mActionLoadGCPpoints->setIcon( getThemeIcon( "/mActionLoadGCPpoints.png" ) ); diff --git a/src/plugins/georeferencer/qgstransformsettingsdialog.cpp b/src/plugins/georeferencer/qgstransformsettingsdialog.cpp index 0b94298c9985..8ab67f19391a 100644 --- a/src/plugins/georeferencer/qgstransformsettingsdialog.cpp +++ b/src/plugins/georeferencer/qgstransformsettingsdialog.cpp @@ -64,6 +64,7 @@ QgsTransformSettingsDialog::QgsTransformSettingsDialog( const QString &raster, c cmbResampling->setCurrentIndex( s.value( "/Plugin-GeoReferencer/lastresampling", 0 ).toInt() ); cmbCompressionComboBox->setCurrentIndex( s.value( "/Plugin-GeoReferencer/lastcompression", 0 ).toInt() ); leTargetSRS->setText( s.value( "/Plugin-GeoReferencer/targetsrs" ).toString() ); + mWorldFileCheckBox->setChecked( s.value( "/Plugin-Georeferencer/word_file_checkbox", false ).toBool() ); cbxUserResolution->setChecked( s.value( "/Plugin-Georeferencer/user_specified_resolution", false ).toBool() ); bool ok; @@ -137,6 +138,7 @@ void QgsTransformSettingsDialog::resetSettings() s.setValue( "/Plugin-GeoReferencer/user_specified_resolution", false ); s.setValue( "/Plugin-GeoReferencer/user_specified_resx", 1.0 ); s.setValue( "/Plugin-GeoReferencer/user_specified_resy", -1.0 ); + s.setValue( "/Plugin-GeoReferencer/word_file_checkbox", false ); s.setValue( "/Plugin-GeoReferencer/lastPDFReportDir", "" ); } @@ -158,7 +160,7 @@ void QgsTransformSettingsDialog::accept() int minGCPpoints; if ( checkGCPpoints( cmbTransformType->itemData( cmbTransformType->currentIndex() ).toInt(), minGCPpoints ) ) { - if ( leOutputRaster->text().isEmpty() ) + if ( leOutputRaster->text().isEmpty() && !mWorldFileCheckBox->isChecked() ) { QMessageBox::information( this, tr( "Info" ), tr( "Please set output name" ) ); return; @@ -195,6 +197,7 @@ void QgsTransformSettingsDialog::accept() s.setValue( "/Plugin-GeoReferencer/user_specified_resolution", cbxUserResolution->isChecked() ); s.setValue( "/Plugin-GeoReferencer/user_specified_resx", dsbHorizRes->value() ); s.setValue( "/Plugin-GeoReferencer/user_specified_resy", dsbVerticalRes->value() ); + s.setValue( "/Plugin-GeoReferencer/word_file_checkbox", mWorldFileCheckBox->isChecked() ); QString pdfReportFileName = mReportFileLineEdit->text(); if ( !pdfReportFileName.isEmpty() ) { diff --git a/src/plugins/globe/globe_plugin.cpp b/src/plugins/globe/globe_plugin.cpp index eaad5f5e33ee..c23737cbad75 100644 --- a/src/plugins/globe/globe_plugin.cpp +++ b/src/plugins/globe/globe_plugin.cpp @@ -38,6 +38,7 @@ #include #include +#include #include #include @@ -96,11 +97,23 @@ GlobePlugin::GlobePlugin( QgisInterface* theQgisInterface ) setObjectName( "globePlugin" ); setParent( theQgisInterface->mainWindow() ); -// add internal osg plugin path if bundled osg on OS X -#ifdef HAVE_MACAPP_BUNDLED_OSG - if ( !QgsApplication::isRunningFromBuildDir() ) +// update path to osg plugins on Mac OS X +#ifdef Q_OS_MACX + if ( !getenv( "OSG_LIBRARY_PATH" ) ) { - osgDB::Registry::instance()->setLibraryFilePathList( QDir::cleanPath( QgsApplication::pluginPath() + "/../osgPlugins" ).toStdString() ); + // OSG_PLUGINS_PATH value set by CMake option + QString ogsPlugins( OSG_PLUGINS_PATH ); +#ifdef HAVE_MACAPP_BUNDLED_OSG + if ( !QgsApplication::isRunningFromBuildDir() ) + { + // add internal osg plugin path if bundled osg + ogsPlugins = QgsApplication::pluginPath() + "/../osgPlugins"; + } +#endif + if ( QFile::exists( ogsPlugins ) ) + { + osgDB::Registry::instance()->setLibraryFilePathList( QDir::cleanPath( ogsPlugins ).toStdString() ); + } } #endif @@ -494,15 +507,20 @@ double GlobePlugin::getSelectedElevation() void GlobePlugin::syncExtent() { + QgsMapCanvas* mapCanvas = mQGisIface->mapCanvas(); + QgsMapRenderer* mapRenderer = mapCanvas->mapRenderer(); + QgsRectangle extent = mapCanvas->extent(); + osgEarth::Util::EarthManipulator* manip = dynamic_cast( mOsgViewer->getCameraManipulator() ); //rotate earth to north and perpendicular to camera manip->setRotation( osg::Quat() ); - //get mapCanvas->extent().height() in meters - QgsRectangle extent = mQGisIface->mapCanvas()->extent(); QgsDistanceArea dist; - dist.setEllipsoidalMode( true ); - //dist.setProjectionsEnabled( true ); + + dist.setSourceCrs( mapRenderer->destinationCrs().srsid() ); + dist.setEllipsoidalMode( mapRenderer->hasCrsTransformEnabled() ); + dist.setEllipsoid( QgsProject::instance()->readEntry( "Measure", "/Ellipsoid", GEO_NONE ) ); + QgsPoint ll = QgsPoint( extent.xMinimum(), extent.yMinimum() ); QgsPoint ul = QgsPoint( extent.xMinimum(), extent.yMaximum() ); double height = dist.measureLine( ll, ul ); @@ -645,26 +663,29 @@ void GlobePlugin::setupControls() mControlCanvas->addControl( backgroundGrp2 ); //Zoom Reset +#if ENABLE_HOME_BUTTON osg::Image* homeImg = osgDB::readImageFile( imgDir + "/zoom-home.png" ); ImageControl* home = new NavigationControl( homeImg ); home->setPosition( imgLeft + 12 + 3, imgTop + 2 ); + imgTop = imgTop + 23 + 2; home->addEventHandler( new HomeControlHandler( manip ) ); mControlCanvas->addControl( home ); +#endif //refresh layers osg::Image* refreshImg = osgDB::readImageFile( imgDir + "/refresh-view.png" ); ImageControl* refresh = new NavigationControl( refreshImg ); - refresh->setPosition( imgLeft + 12 + 3, imgTop + 2 + 23 + 2 ); + refresh->setPosition( imgLeft + 12 + 3, imgTop + 3 ); + imgTop = imgTop + 23 + 2; refresh->addEventHandler( new RefreshControlHandler( this ) ); mControlCanvas->addControl( refresh ); //Sync Extent -#if ENABLE_SYNC_BUTTON osg::Image* syncImg = osgDB::readImageFile( imgDir + "/sync-extent.png" ); ImageControl* sync = new NavigationControl( syncImg ); + sync->setPosition( imgLeft + 12 + 3, imgTop + 2 ); sync->addEventHandler( new SyncExtentControlHandler( this ) ); mControlCanvas->addControl( sync ); -#endif } void GlobePlugin::setupProxy() diff --git a/src/plugins/globe/images/gui/sync-extent.png b/src/plugins/globe/images/gui/sync-extent.png index b97bb387c301..6849f41d04a7 100644 Binary files a/src/plugins/globe/images/gui/sync-extent.png and b/src/plugins/globe/images/gui/sync-extent.png differ diff --git a/src/providers/ogr/qgsogrfeatureiterator.cpp b/src/providers/ogr/qgsogrfeatureiterator.cpp index 6579f1feee7e..2133cdaa1e8a 100644 --- a/src/providers/ogr/qgsogrfeatureiterator.cpp +++ b/src/providers/ogr/qgsogrfeatureiterator.cpp @@ -91,7 +91,7 @@ void QgsOgrFeatureIterator::ensureRelevantFields() { mFetchGeometry = ( mRequest.filterType() == QgsFeatureRequest::FilterRect ) || !( mRequest.flags() & QgsFeatureRequest::NoGeometry ); QgsAttributeList attrs = ( mRequest.flags() & QgsFeatureRequest::SubsetOfAttributes ) ? mRequest.subsetOfAttributes() : P->attributeIndexes(); - P->setRelevantFields( mFetchGeometry, attrs ); + P->setRelevantFields( ogrLayer, mFetchGeometry, attrs ); P->mRelevantFieldsForNextFeature = true; } diff --git a/src/providers/ogr/qgsogrprovider.cpp b/src/providers/ogr/qgsogrprovider.cpp index e78594b6d7c0..e62426befbfd 100644 --- a/src/providers/ogr/qgsogrprovider.cpp +++ b/src/providers/ogr/qgsogrprovider.cpp @@ -555,7 +555,7 @@ QStringList QgsOgrProvider::subLayers() const // Count features for geometry types QMap fCount; // TODO: avoid reading attributes, setRelevantFields cannot be called here because it is not constant - //setRelevantFields( true, QgsAttributeList() ); + //setRelevantFields( ogrLayer, true, QgsAttributeList() ); OGR_L_ResetReading( layer ); OGRFeatureH fet; while (( fet = OGR_L_GetNextFeature( layer ) ) ) @@ -714,7 +714,7 @@ QString QgsOgrProvider::storageType() const return ogrDriverName; } -void QgsOgrProvider::setRelevantFields( bool fetchGeometry, const QgsAttributeList &fetchAttributes ) +void QgsOgrProvider::setRelevantFields( OGRLayerH ogrLayer, bool fetchGeometry, const QgsAttributeList &fetchAttributes ) { #if defined(GDAL_VERSION_NUM) && GDAL_VERSION_NUM >= 1800 if ( OGR_L_TestCapability( ogrLayer, OLCIgnoreFields ) ) @@ -975,7 +975,7 @@ bool QgsOgrProvider::addFeature( QgsFeature& f ) bool QgsOgrProvider::addFeatures( QgsFeatureList & flist ) { - setRelevantFields( true, attributeIndexes() ); + setRelevantFields( ogrLayer, true, attributeIndexes() ); bool returnvalue = true; for ( QgsFeatureList::iterator it = flist.begin(); it != flist.end(); ++it ) @@ -1077,7 +1077,7 @@ bool QgsOgrProvider::changeAttributeValues( const QgsChangedAttributesMap & attr clearMinMaxCache(); - setRelevantFields( true, attributeIndexes() ); + setRelevantFields( ogrLayer, true, attributeIndexes() ); for ( QgsChangedAttributesMap::const_iterator it = attr_map.begin(); it != attr_map.end(); ++it ) { @@ -1173,7 +1173,7 @@ bool QgsOgrProvider::changeGeometryValues( QgsGeometryMap & geometry_map ) OGRFeatureH theOGRFeature = 0; OGRGeometryH theNewGeometry = 0; - setRelevantFields( true, attributeIndexes() ); + setRelevantFields( ogrLayer, true, attributeIndexes() ); for ( QgsGeometryMap::iterator it = geometry_map.begin(); it != geometry_map.end(); ++it ) { @@ -2388,7 +2388,7 @@ void QgsOgrProvider::recalculateFeatureCount() { featuresCounted = 0; OGR_L_ResetReading( ogrLayer ); - setRelevantFields( true, QgsAttributeList() ); + setRelevantFields( ogrLayer, true, QgsAttributeList() ); OGR_L_ResetReading( ogrLayer ); OGRFeatureH fet; while (( fet = OGR_L_GetNextFeature( ogrLayer ) ) ) diff --git a/src/providers/ogr/qgsogrprovider.h b/src/providers/ogr/qgsogrprovider.h index de9f789d6c9d..b126c81c7d4a 100644 --- a/src/providers/ogr/qgsogrprovider.h +++ b/src/providers/ogr/qgsogrprovider.h @@ -270,7 +270,7 @@ class QgsOgrProvider : public QgsVectorDataProvider void recalculateFeatureCount(); /** tell OGR, which fields to fetch in nextFeature/featureAtId (ie. which not to ignore) */ - void setRelevantFields( bool fetchGeometry, const QgsAttributeList& fetchAttributes ); + void setRelevantFields( OGRLayerH ogrLayer, bool fetchGeometry, const QgsAttributeList& fetchAttributes ); /** convert a QgsField to work with OGR */ static bool convertField( QgsField &field, const QTextCodec &encoding ); diff --git a/src/providers/spatialite/qgsspatialitefeatureiterator.cpp b/src/providers/spatialite/qgsspatialitefeatureiterator.cpp index b9163363dfcf..15eb1d54d3d5 100644 --- a/src/providers/spatialite/qgsspatialitefeatureiterator.cpp +++ b/src/providers/spatialite/qgsspatialitefeatureiterator.cpp @@ -221,9 +221,9 @@ QString QgsSpatiaLiteFeatureIterator::whereClauseRect() // handling a VirtualShape layer whereClause += QString( "MbrIntersects(%1, BuildMbr(%2))" ).arg( P->quotedIdentifier( P->mGeometryColumn ) ).arg( mbr( rect ) ); } - else + else if ( rect.isFinite() ) { - if ( P->spatialIndexRTree && rect.isFinite() ) + if ( P->spatialIndexRTree ) { // using the RTree spatial index QString mbrFilter = QString( "xmin <= %1 AND " ).arg( qgsDoubleToString( rect.xMaximum() ) ); @@ -251,6 +251,10 @@ QString QgsSpatiaLiteFeatureIterator::whereClauseRect() whereClause += QString( "MbrIntersects(%1, BuildMbr(%2))" ).arg( P->quotedIdentifier( P->mGeometryColumn ) ).arg( mbr( rect ) ); } } + else + { + whereClause = "1"; + } return whereClause; } diff --git a/tests/src/core/testqgsexpression.cpp b/tests/src/core/testqgsexpression.cpp index 3eac8977e5a2..821a5f8110f5 100644 --- a/tests/src/core/testqgsexpression.cpp +++ b/tests/src/core/testqgsexpression.cpp @@ -100,7 +100,7 @@ class TestQgsExpression: public QObject if ( exp.hasParserError() ) qDebug() << "Parser error: " << exp.parserErrorString(); else - qDebug() << "Parsed string: " << exp.dump(); + qDebug() << "Parsed string: " << exp.expression(); QCOMPARE( !exp.hasParserError(), valid ); } diff --git a/tests/src/core/testqgsogcutils.cpp b/tests/src/core/testqgsogcutils.cpp index ad7a10bb4bd4..82f96626c5da 100644 --- a/tests/src/core/testqgsogcutils.cpp +++ b/tests/src/core/testqgsogcutils.cpp @@ -204,13 +204,13 @@ void TestQgsOgcUtils::testExpressionFromOgcFilter() QVERIFY( expr ); qDebug( "OGC XML : %s", xmlText.toAscii().data() ); - qDebug( "EXPR-DUMP: %s", expr->dump().toAscii().data() ); + qDebug( "EXPR-DUMP: %s", expr->expression().toAscii().data() ); if ( expr->hasParserError() ) qDebug( "ERROR: %s ", expr->parserErrorString().toAscii().data() ); QVERIFY( !expr->hasParserError() ); - QCOMPARE( dumpText, expr->dump() ); + QCOMPARE( dumpText, expr->expression() ); delete expr; } @@ -234,7 +234,7 @@ void TestQgsOgcUtils::testExpressionToOgcFilter() doc.appendChild( filterElem ); - qDebug( "EXPR: %s", exp.dump().toAscii().data() ); + qDebug( "EXPR: %s", exp.expression().toAscii().data() ); qDebug( "OGC : %s", doc.toString( -1 ).toAscii().data() ); QCOMPARE( xmlText, doc.toString( -1 ) );