জিওসিভারে কেএমএল এবং শৈলীর তথ্য আমদানি করা হচ্ছে


9

তাই আমি এমন এক প্রকল্পে কাজ করছি যা এক বছরেরও বেশি সময় ধরে বিকাশে রয়েছে, তবে আমি সম্প্রতি জড়িত হয়েছি। আমার কাজটিতে প্রায় 2,500 কেএমএল ফাইলগুলিকে অন্য ফর্ম্যাটে রূপান্তর করা, এই ফাইলগুলিকে জিওসারবারে আমদানি করা এবং তারপরে প্রতিটি ফাইলের জন্য সম্পর্কিত স্টাইলের তথ্য অনুলিপি করা জড়িত। আমি বুঝতে পেরেছি যে জিওসিভার আপনাকে সরাসরি কেএমএল ফাইলগুলি আমদানি করার অনুমতি দেয়, তবে আমাদের ফাইলগুলি কখনই সঠিকভাবে রেন্ডার হয় না বলে মনে হয় এবং আমার বস দার্শনিক কারণে KML ফর্ম্যাট থেকে সরে যেতে চান।

Ogr2ogr ব্যবহার করে, আমি এই ফাইলগুলিকে ইএসআরআই শেফিলগুলিতে রূপান্তরিত করার চেষ্টা করেছি, তবে রূপান্তর প্রক্রিয়াটি কেবল ফাইলের প্রায় এক তৃতীয়াংশের জন্য কাজ করে এবং স্টাইলের তথ্যের জন্য ডাকা কিছু মেটাডেটা মুছে ফেলে। যে ফাইলগুলি বহুভুজ এবং পয়েন্টগুলির জন্য কোড রূপান্তরিত করে না, সেগুলি কিউজিআইএসের মতো অন্যান্য প্রোগ্রামগুলির জন্য একটি ত্রুটি হতে পারে।

আমি কেএমএল সমস্ত ফাইল একটি পোস্টজিআইএস ডাটাবেসে রাখার চেষ্টা করেছি এবং সেগুলি রূপান্তরিত করেছি। তবে, এটি আমদানির জন্য আবশ্যকভাবে ফাঁকা টেবিল রেখে সমস্ত ডেটা মুছে ফেলবে বলে মনে হয়।

টিএল; ডিআর আমাকে জিওসিভার দ্বারা ব্যবহারযোগ্য, 2,500 কেএমএল ফাইলগুলিকে একটি ফর্ম্যাটে রূপান্তর করার একটি উপায় খুঁজে বের করতে হবে এবং এক্সএমএল শৈলীর তথ্য দিয়ে কাজ করব। আমি একজন সম্পূর্ণ জিআইএস নুব এবং এটি আমার প্রথমবারের মতো পোস্টিং, তাই এটি যদি কিছুটা হাস্যকর মনে হয় তবে আমি দুঃখিত।


সমস্ত কেএমএল ফাইলের জন্য মূলত স্টাইলটি একই বা এগুলি সম্পূর্ণ আলাদা? পূর্বের যদি আপনি দেখতে পান যে আপনি জিও সার্ভারের জন্য কেবল স্টাইল ফাইল (বা ফাইলের সেট) রোল করতে পারেন যা এসএলডি (একটি এক্সএমএল ভিত্তিক ফর্ম্যাট) ব্যবহার করে।
nmtoken


আমি এই প্রশ্নটি কোথায় জিজ্ঞাসা করতে পারি জানি না তবে আমি নিশ্চিত আপনি আমার উত্তরটি জানেন। জিও সার্ভারে নতুন ডেটাসোর্স হিসাবে কেএমএল আপলোড করার জন্য এখানে কী আছে? @ আসামনে
মোস্তফা

উত্তর:


1

জিও সার্ভারে ডেটা এবং স্টাইল পৃথক করা হয়েছে, তাদের মিশ্রণের কোনও উপায় নেই। আপনি একটি এসএলডি স্বয়ংক্রিয়ভাবে তৈরি করতে পারেন। এখনও অবধি, আমি জানি না যে কিমিএল স্টাইল থেকে জিওসিভারের স্টাইলে কোনও রূপান্তর বিদ্যমান।


1

প্রথমত, জিওসারবার স্টাইল (এসএলডি) এবং ডেটা (কেএমএল) সম্পূর্ণ আলাদা। জিওসিভারে কেএমএল ফাইলটি আমদানি করুন এবং পরে, শৈলী সম্পাদকে এসএলডি ফাইল তৈরি করুন বা দর্শকের মধ্যে শৈলী তৈরি করুন (ম্যাপফিশাপের মতো) এবং এরপরে, এক্সএমএল-এ না লিখে সহজেই এসএলডি পেতে .sld ফাইলটি সংরক্ষণ করুন (শ্রেণিবিন্যাস উপলব্ধি করা আরও কঠিন বা অন্যান্য নির্দিষ্ট স্টাইল যখন কোনও সিস্টেম সহজেই বুঝতে পারে)।

পরে, আমি জিআইএস ডেটা এবং সমস্ত সময় সংরক্ষণের জন্য কেএমএল ফাইলগুলি ব্যবহার করেছি, আমি বৈশিষ্ট্যটি (= ডেটা হারিয়েছি) হারিয়েছি। কেএমএল কেবল জ্যামিতির তথ্য রাখে। আপনার নাটিভ ডেটা অন্য ফর্ম্যাটে সংরক্ষণ করা ভাল (সিএসভি অ্যাট্রিবিউট রাখুন) বা কেবল ডেটা টেবিল তৈরি করুন এবং তার পরে, ভৌগলিক তথ্য দিন বা সরাসরি স্তর তৈরি করুন। (শেফফাইল, সিএসভি ...)।

আমি আশা করি আমি আপনাকে সাহায্য ...


1

আপনি ব্যবহার করতে ইচ্ছুক এবং আপনি "মেটাডেটা" হিসাবে উল্লেখ করেছেন সেই কিমিএল ফাইলের অতিরিক্ত তথ্যটি কেএমএল জারগনে থাকতে পারে:

  1. স্টাইল এবং স্টাইলম্যাপস
  2. ExtendedData
  3. প্লেসমার্কের বর্ণনা ক্ষেত্রের কাস্টম তথ্য, সাধারণত এইচটিএমএল টেবিলগুলির আকারে

যেহেতু প্রতিটি কিমিএল ফাইল একটি ASCII ফাইল, এটি একটি পাঠ্য-প্রক্রিয়াকরণ স্ক্রিপ্টের মাধ্যমে প্রক্রিয়া করা যায়। আমার উপলব্ধি অনুসারে, আপনি জিওসভারটিতে যে ধরণের উপস্থাপনা করতে চান এবং স্টাইল করতে চান তার জন্য অবশ্যই একটি পৃথক "স্তর" তৈরি করতে হবে। এর অর্থ হ'ল প্রতি কিলোমিটার ফাইল থেকে আপনার বিভিন্ন ধরণের অবজেক্টের শ্রেণিবিন্যাসের উপর নির্ভর করে অনেকগুলি ফাইল শেষ হবে।

অফ-শেল্ফ সরঞ্জামগুলির জন্য সোজা কাজ নয় job আশা করা যায়, সমস্ত 2.500 কিলোমিটার ফাইল যদি একই অ্যাপ্লিকেশন দিয়ে তৈরি করা হয় তবে তাদের কাঠামো একই হবে। সেক্ষেত্রে আপনার এই কাঠামোর বিশদ বিশ্লেষণ এবং প্রচুর কাস্টম স্ক্রিপ্টিং দরকার।


1

কিলোমিটারটি খুলুন এবং এটির ভিতরে দেখুন এটির মতো যা যা আপনি চাইছেন তা হ'ল অন্যান্য পোস্টাররা পরামর্শ দিয়েছে যে স্টাইলগুলি কার্ডগুলিতে নেই তাই আপনার সমস্যাটি সমস্ত ফাইলের রূপান্তর যা মূলত টেক্সট ফাইলগুলি অজগর শিখায়

তারপরে এই জাতীয় কিছু হ্যাক করুন: https://gist.github.com/linwoodc3/0306734dfe17076dfd34e09660c198c0

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.