{"id":28116,"date":"2025-07-14T11:12:02","date_gmt":"2025-07-14T09:12:02","guid":{"rendered":"https:\/\/nid.pl\/?page_id=28116"},"modified":"2025-07-14T11:16:22","modified_gmt":"2025-07-14T09:16:22","slug":"28116-2","status":"publish","type":"page","link":"https:\/\/nid.pl\/en\/28116-2\/","title":{"rendered":"Kalkulator DOF_alg"},"content":{"rendered":"<style>\n:root{--clr-border:#ccc;--clr-accent:#c00}\nhtml{font-size:16px}body{font-family:Arial,sans-serif;margin:0}\n.calc{max-width:420px;margin:2rem auto;padding:1.5rem;box-sizing:border-box}\nh1{font-size:1.8rem;text-align:center;margin-bottom:1.2rem}\nlabel{display:block;margin-top:1rem;font-weight:bold}\ninput[type=\"number\"]{width:100%;padding:.55rem .75rem;font-size:1rem;border:1px solid var(--clr-border);border-radius:6px;box-sizing:border-box}\n.error{color:var(--clr-accent);margin-top:1rem}\n.result{margin-top:2rem;display:none}\n.result span{font-weight:bold}\n.howto{margin:2rem auto 0;max-width:420px;padding:0;font-size:.95rem}\n.howto summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:.5rem;padding:.4rem 0}\n.howto summary::before{content:'\u25be';font-size:1rem;transition:transform .25s}\n.howto[open] summary::before{transform:rotate(180deg)}\n.howto[open]{border-top:1px solid var(--clr-border);padding-top:.75rem}\n@media(max-width:480px){.calc{padding:1rem 1.25rem}}\n.brand{font-size:.7rem;color:#666;text-align:center;margin-top:1.5rem}\n<\/style>\n\n<div class=\"calc\">\n  <label for=\"focalLength\">ogniskowa (mm):<\/label>\n  <input type=\"number\" id=\"focalLength\" step=\"1\" min=\"0\" placeholder=\"np. 24\" \/>\n\n  <label for=\"aperture\">przys\u0142ona (f\/):<\/label>\n  <input type=\"number\" id=\"aperture\" step=\"0.1\" min=\"0\" placeholder=\"np. 8\" \/>\n\n  <label for=\"distance\">odleg\u0142o\u015b\u0107 do obiektu (m):<\/label>\n  <input type=\"number\" id=\"distance\" step=\"0.01\" min=\"0\" placeholder=\"np. 0,8\" \/>\n\n  <label for=\"pixelPitch\">pixel pitch (mm):<\/label>\n  <input type=\"number\" id=\"pixelPitch\" step=\"0.0001\" min=\"0\" placeholder=\"np. 0,0032\" \/>\n\n  <div class=\"error\" id=\"error\">Uzupe\u0142nij dane &gt; 0.<\/div>\n  <div class=\"result\" id=\"result\"><\/div>\n<\/div>\n\n<details class=\"howto\">\n  <summary>uwagi \/ instrukcja pixel pitch<\/summary>\n  <p>Oblicza zakres ostro\u015bci dla fotogrametrii, przyjmuj\u0105c CoC = wielko\u015b\u0107 piksela (pixel pitch).<\/p>\n\n  <h2>Metodologia:<\/h2>\n  <p>Wzory bazuj\u0105 na klasycznych zale\u017cno\u015bciach dla g\u0142\u0119bi ostro\u015bci z uwzgl\u0119dnieniem definicji hiperfokalnej:<\/p>\n  <ul>\n    <li><strong>H<\/strong> (dystans hiperfokalny) = <code>(f\u00b2) \/ (N \u00b7 CoC) + f<\/code><\/li>\n    <li>\n      Granice ostro\u015bci:<br>\n      <em>near<\/em> = <code>(H \u00b7 s) \/ (H + (s \u2013 f))<\/code><br>\n      <em>far<\/em>  = <code>(H \u00b7 s) \/ (H \u2013 (s \u2013 f))<\/code>\n    <\/li>\n  <\/ul>\n\n  <h2>Jak obliczy\u0107 pixel pitch?<\/h2>\n  <p>Pixel pitch to fizyczny rozmiar pojedynczego piksela na matrycy aparatu. Obliczamy go dziel\u0105c szeroko\u015b\u0107 matrycy (w&nbsp;mm) przez liczb\u0119 pikseli w&nbsp;poziomie.<\/p>\n  <p><em>Przyk\u0142ad (Canon R7):<\/em><br>\n     Szeroko\u015b\u0107 matrycy APS\u2011C \u2248 22,5&nbsp;mm<br>\n     Rozdzielczo\u015b\u0107 pozioma: 6960&nbsp;px<br>\n     Pixel pitch = 22,5&nbsp;mm \/ 6960 \u2248 <strong>0,0032&nbsp;mm<\/strong><\/p>\n<\/details>\n\n<script>\nconst APERTURES=[1,1.2,1.4,1.8,2,4,5.6,8,11,16,32,64];\nconst apertureField=document.getElementById('aperture');\nlet lastNumeric=NaN;\n\napertureField.addEventListener('change',()=>{lastNumeric=parseFloat(apertureField.value);calculateDOF();});\napertureField.addEventListener('input',onSpinnerInput);\napertureField.addEventListener('keydown',e=>{\n  if(e.key==='ArrowUp'||e.key==='ArrowDown'){e.preventDefault();stepAperture(e.key==='ArrowUp');}\n});\n\nfunction onSpinnerInput(){\n  const current=parseFloat(apertureField.value);\n  if(isNaN(current)){lastNumeric=NaN;return;}\n  if(isNaN(lastNumeric)){lastNumeric=current;return;}\n  const delta=current-lastNumeric;\n  if(Math.abs(delta)<=0.11){ stepAperture(delta>0); }\n  else { lastNumeric=current; }\n}\n\nfunction stepAperture(isUp){\n  let val=parseFloat(apertureField.value);\n  if(isNaN(val)) val=APERTURES[0];\n  let idx=APERTURES.reduce((best,cur,i)=>Math.abs(APERTURES[i]-val)<Math.abs(APERTURES[best]-val)?i:best,0);\n  idx=isUp?Math.min(idx+1,APERTURES.length-1):Math.max(idx-1,0);\n  const newVal=APERTURES[idx];\n  apertureField.value=newVal;\n  lastNumeric=newVal;\n  calculateDOF();\n}\n\nconst inputs=document.querySelectorAll('#focalLength,#aperture,#distance,#pixelPitch');\ninputs.forEach(el=>el.addEventListener('input',calculateDOF));\n\nfunction val(id){return parseFloat(document.getElementById(id).value.replace(',','.'))}\nfunction toPl(n,d){return n.toLocaleString('pl-PL',{minimumFractionDigits:d,maximumFractionDigits:d})}\n\nfunction calculateDOF(){\n  const err=document.getElementById('error'),res=document.getElementById('result');\n  const f=val('focalLength'),N=parseFloat(apertureField.value),sM=val('distance'),c=val('pixelPitch');\n  if(!f||!N||!sM||!c){err.textContent='Uzupe\u0142nij dane > 0.';res.style.display='none';return;}\n  const s=sM*1000;if(s<=f){err.textContent='Odleg\u0142o\u015b\u0107 do obiektu musi by\u0107 wi\u0119ksza ni\u017c ogniskowa.';res.style.display='none';return;}\n  err.textContent='';\n  const H=(f*f)\/(N*c)+f,near=(H*s)\/(H+(s-f)),far=H-(s-f)>0?(H*s)\/(H-(s-f)):Infinity,dof=far===Infinity?Infinity:far-near;\n  const cm=x=>toPl(x\/10,1)+' cm';\n  res.innerHTML=`<p><strong>Zakres ostro\u015bci (DOF_alg):<\/strong><\/p><p>od: <span>${cm(near)}<\/span><\/p><p>do: <span>${far===Infinity?'\u221e':cm(far)}<\/span><\/p><p>ca\u0142kowita g\u0142\u0119bia: <span>${far===Infinity?'\u221e':cm(dof)}<\/span><\/p>`;\n  res.style.display='block';\n}\n<\/script>\n\n<footer class=\"brand\">\u00a9 2025 NID \u00b7 R. Zimek<\/footer>","protected":false},"excerpt":{"rendered":"<p>ogniskowa (mm): przys\u0142ona (f\/): odleg\u0142o\u015b\u0107 do obiektu (m): pixel pitch (mm): Uzupe\u0142nij dane &gt; 0. uwagi \/ instrukcja pixel pitch Oblicza zakres ostro\u015bci dla fotogrametrii, przyjmuj\u0105c CoC = wielko\u015b\u0107 piksela [&hellip;]<\/p>","protected":false},"author":15,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"off","_et_pb_old_content":"","_et_gb_content_width":"1080","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-28116","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Kalkulator DOF_alg - NID<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/nid.pl\/en\/28116-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kalkulator DOF_alg - NID\" \/>\n<meta property=\"og:description\" content=\"ogniskowa (mm): przys\u0142ona (f\/): odleg\u0142o\u015b\u0107 do obiektu (m): pixel pitch (mm): Uzupe\u0142nij dane &gt; 0. uwagi \/ instrukcja pixel pitch Oblicza zakres ostro\u015bci dla fotogrametrii, przyjmuj\u0105c CoC = wielko\u015b\u0107 piksela [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/nid.pl\/en\/28116-2\/\" \/>\n<meta property=\"og:site_name\" content=\"NID\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/zabytek\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-14T09:16:22+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@NarIDpl\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/nid.pl\/28116-2\/\",\"url\":\"https:\/\/nid.pl\/28116-2\/\",\"name\":\"Kalkulator DOF_alg - NID\",\"isPartOf\":{\"@id\":\"https:\/\/nid.pl\/#website\"},\"datePublished\":\"2025-07-14T09:12:02+00:00\",\"dateModified\":\"2025-07-14T09:16:22+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/nid.pl\/28116-2\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/nid.pl\/28116-2\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/nid.pl\/28116-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/nid.pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kalkulator DOF_alg\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/nid.pl\/#website\",\"url\":\"https:\/\/nid.pl\/\",\"name\":\"NID\",\"description\":\"Narodowy Instytut Dziedzictwa\",\"publisher\":{\"@id\":\"https:\/\/nid.pl\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/nid.pl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/nid.pl\/#organization\",\"name\":\"Narodowy Instytut Dziedzictwa\",\"url\":\"https:\/\/nid.pl\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/nid.pl\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/nid.pl\/wp-content\/uploads\/2022\/10\/logoRedDark.png\",\"contentUrl\":\"https:\/\/nid.pl\/wp-content\/uploads\/2022\/10\/logoRedDark.png\",\"width\":200,\"height\":197,\"caption\":\"Narodowy Instytut Dziedzictwa\"},\"image\":{\"@id\":\"https:\/\/nid.pl\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/zabytek\",\"https:\/\/x.com\/NarIDpl\",\"https:\/\/www.instagram.com\/nid.pl\/?hl=pl\",\"https:\/\/www.linkedin.com\/company\/narodowy-instytut-dziedzictwa\",\"https:\/\/www.youtube.com\/channel\/UCQXuhKa2uHtmNvLRUSx40JA\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Kalkulator DOF_alg - NID","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/nid.pl\/en\/28116-2\/","og_locale":"en_GB","og_type":"article","og_title":"Kalkulator DOF_alg - NID","og_description":"ogniskowa (mm): przys\u0142ona (f\/): odleg\u0142o\u015b\u0107 do obiektu (m): pixel pitch (mm): Uzupe\u0142nij dane &gt; 0. uwagi \/ instrukcja pixel pitch Oblicza zakres ostro\u015bci dla fotogrametrii, przyjmuj\u0105c CoC = wielko\u015b\u0107 piksela [&hellip;]","og_url":"https:\/\/nid.pl\/en\/28116-2\/","og_site_name":"NID","article_publisher":"https:\/\/www.facebook.com\/zabytek","article_modified_time":"2025-07-14T09:16:22+00:00","twitter_card":"summary_large_image","twitter_site":"@NarIDpl","twitter_misc":{"Estimated reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/nid.pl\/28116-2\/","url":"https:\/\/nid.pl\/28116-2\/","name":"Kalkulator DOF_alg - NID","isPartOf":{"@id":"https:\/\/nid.pl\/#website"},"datePublished":"2025-07-14T09:12:02+00:00","dateModified":"2025-07-14T09:16:22+00:00","breadcrumb":{"@id":"https:\/\/nid.pl\/28116-2\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/nid.pl\/28116-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/nid.pl\/28116-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/nid.pl\/"},{"@type":"ListItem","position":2,"name":"Kalkulator DOF_alg"}]},{"@type":"WebSite","@id":"https:\/\/nid.pl\/#website","url":"https:\/\/nid.pl\/","name":"NID","description":"Narodowy Instytut Dziedzictwa","publisher":{"@id":"https:\/\/nid.pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/nid.pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/nid.pl\/#organization","name":"Narodowy Instytut Dziedzictwa","url":"https:\/\/nid.pl\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/nid.pl\/#\/schema\/logo\/image\/","url":"https:\/\/nid.pl\/wp-content\/uploads\/2022\/10\/logoRedDark.png","contentUrl":"https:\/\/nid.pl\/wp-content\/uploads\/2022\/10\/logoRedDark.png","width":200,"height":197,"caption":"Narodowy Instytut Dziedzictwa"},"image":{"@id":"https:\/\/nid.pl\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/zabytek","https:\/\/x.com\/NarIDpl","https:\/\/www.instagram.com\/nid.pl\/?hl=pl","https:\/\/www.linkedin.com\/company\/narodowy-instytut-dziedzictwa","https:\/\/www.youtube.com\/channel\/UCQXuhKa2uHtmNvLRUSx40JA"]}]}},"_links":{"self":[{"href":"https:\/\/nid.pl\/en\/wp-json\/wp\/v2\/pages\/28116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nid.pl\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/nid.pl\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/nid.pl\/en\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/nid.pl\/en\/wp-json\/wp\/v2\/comments?post=28116"}],"version-history":[{"count":0,"href":"https:\/\/nid.pl\/en\/wp-json\/wp\/v2\/pages\/28116\/revisions"}],"wp:attachment":[{"href":"https:\/\/nid.pl\/en\/wp-json\/wp\/v2\/media?parent=28116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}