পাইথন জিডিএল: ogr.open বা ড্রাইভার.ওপেন?


10

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

এ নিয়ে আমার কোনও সমস্যা নেই; তবে আমি আগ্রহী যে ড্রাইভার ইন্সটেন্স পদ্ধতি "ওপেন" এবং ওজিআর ফাংশন "ওপেন" এর মধ্যে পার্থক্যটি কী। উদাহরণস্বরূপ, এর মধ্যে পার্থক্য কী:

driver = ogr.GetDriverByName("ESRI Shapefile")
source = driver.Open(“O:\myshp.shp”,0)

এবং

source = ogr.Open(“O:\myshp.shp”,0)

এমন কোনও দৃশ্য আছে যেখানে আপনি একে অপরকে ব্যবহার করবেন?


ফলোআপ প্রশ্ন: এটি মনে হয় driver = gdal.GetDriverByNameকাজের মতো এবং gdal.Openকাজ driver.Openকরে তবে তা হয় না। রাস্টার ফাইলগুলির জন্য কোনও সমতুল্য নেই? আমি জানি জিডিএল এবং ওজিআরটি মূলত বিভিন্ন ব্যক্তি দ্বারা বিকাশ করা হয়েছিল, তবে এই এপিআইয়ের অসঙ্গতি এবং ডকুমেন্টেশনের সম্পূর্ণ অভাব সত্যিই বেদনাদায়ক ...
অ্যাডাম স্টুয়ার্ট

উত্তর:


11

আপনি যদি কোনও ড্রাইভার নির্দিষ্ট করেন তবে ওজিআর কেবলমাত্র নির্দিষ্ট ড্রাইভারের সাথে আপনার ফাইল খোলার চেষ্টা করবে।

আপনি যদি এটি নির্দিষ্ট না করেন তবে ওজিআর আপনার ড্রাইভারটি সমস্ত ড্রাইভারের সাথে খোলার চেষ্টা করবে। এটি আপনার ড্রাইভারটি খুলতে পারে এমন কোনও ড্রাইভার খুঁজে না পাওয়া পর্যন্ত এটি সমস্ত ড্রাইভারের উপরে লুপ হয়ে যাবে। যে ক্রমটি সেগুলি খোলার চেষ্টা করে তা হ'ল ওর্ডিনফো - ফর্ম্যাটে তালিকাভুক্ত একই আদেশ।

এই প্রশ্নটি আরও দেখুন: ওজিআরকে ইনপুট ফর্ম্যাটের জন্য নির্দিষ্ট ড্রাইভার ব্যবহার করতে বাধ্য করুন

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