「カメラまとめ/センサーサイズ別被写界深度計算表」の編集履歴(バックアップ)一覧はこちら
「カメラまとめ/センサーサイズ別被写界深度計算表」(2013/03/02 (土) 12:00:33) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
#include_js(http://code.jquery.com/jquery-1.9.1.min.js)
&topicpath()&aname(top)
#divclass(pageTitle){センサーサイズ別被写界深度計算表}
**初めに
#divclass(h5){初めに}
-センサーサイズによって被写界深度が変わる(ボケやすいボケにくい)などという話をよくしますが、実際にセンサーサイズによってどの程度の変化があるのかを計算してみるページです。
-各レンズのF値とレンズの焦点距離別の被写界深度の深さ、実際に焦点が合う範囲のカメラからの距離を計算することができます。
-※あくまで理論上の計算値であり、実際はカメラ、レンズ、その他条件により異なります
-※計算違い等や感想などありましたら、ページ最下部のコメント欄で教えてくれると嬉しいです
#divclass(h5){使い方}
-被写体までの距離を入力します
--入力し直したら「再計算」ボタンを押してください
-センサーサイズを選択します
-レンズの焦点距離別の被写界深度と、カメラからの焦点が合う範囲の距離が表示されます
-ブラウザを横に長くすると見やすいです
#right(){&link_anchor(top){▲}&link_anchor(bottom){▼}}
**被写界深度と焦点範囲の計算
#divclass(h5){各種データ設定}
#divclass(h6){被写体までの距離入力}
#html2(){
<table border="0">
<tr>
<td class="in">被写体までの距離<input type="text" id="tbDist" size="6" value="3.00">m(メートル)</td>
<td><input type="button" id="btnReculc" value="再計算 " onclick="recalcData()"></td>
</tr>
</table>
<font color="red"><span id="lblError"></span></font>
}
#divclass(h6){センサーサイズの選択}
#html2(){
<table border="1" id="tblSensorList">
<tr><td>選択</td></tr>
<tr><td>センサーサイズ</td></tr>
<tr><td>機種例</td></tr>
<tr><td>幅(mm)</td></tr>
<tr><td>高さ(mm)</td></tr>
</table>
<span id="lblCaption"></span>
}
#divclass(h5){計算結果}
#html2(){
<table border="1" id="tblMain">
<tr><td>レンズ</td></tr>
<tr><td>35mm換算</td></tr>
<tr><td>絞り</td></tr>
</table>
}
**Nikon1関連商品のまとめ
***Nikon1関連商品まとめ(外部サイト)
-[[http://astore.amazon.co.jp/matowiki-22>>http://astore.amazon.co.jp/matowiki-22]]
#right(){&link_anchor(top){▲}&link_anchor(bottom){▼}}
**関連ページ
#ls3(カメラまとめ)
**Nikon1の発売状況
#divclass(h5){新発売機種}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B009VWK66G" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B009VWK9G8" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B009VWKD2S" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00AY7ER5I" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00AY7F3ZG" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#divclass(h5){新発売レンズ}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00AY7GU1W" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00AY7FC34" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#divclass(h5){比較的評価の高いレンズ}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B008V62S7I" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B009A77Q1K" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B005OD1CH8" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
**コメント
- 投稿のテスト -- 管理人 (2013-02-05 23:04:15)
#comment()
#right(){&link_anchor(top){▲}&link_anchor(bottom){▼}}
----
#right(){&lastmod()&aname(bottom)}
#right(){&trackback()}
#javascript(){{
//**********定数宣言
//*****絞り定数 レンズ定数 フィルム定数
var arrFInfo = [1.4, 1.8, 2.0, 2.8, 4.0, 5.6, 8.0, 11.0, 16.0, 22.0, 32.0];
var arrMMInfo = [18,27,34,50,74,81,300];
var arrSensorInfo = {
0: {name: '35mm', width: 36, height: 24, memo:'フルサイズ機'},
1: {name: 'APS-C', width: 23.4, height: 16.7, memo:'NEXなど'},
2: {name: '4/3"', width: 17.3, height: 13.0, memo:'マイクロフォーサーズ'},
3: {name: '1"', width: 13.2, height: 8.8, memo:'Nikon1など'},
4: {name: '2/3"', width: 8.8, height: 6.6, memo:'FUJIFILM X20など'},
5: {name: '1/1.7"', width: 7.6, height: 5.7, memo:'PowerShot S110など'},
6: {name: '1/2.3"', width: 6.2, height: 4.6, memo:'コンデジの多く'}
};
//**********html生成
//*****センサーサイズhtml生成
var i = 0;
for (var data in arrSensorInfo) {
var tdData0 = jQuery("<td width='100pix'><input type='radio' name='rbSensorSize' id='film" + i + "' onclick='recalcData()'></td>");
var tdData1 = jQuery("<td>" + arrSensorInfo[data].name + "</td>");
var tdData4 = jQuery("<td>" + arrSensorInfo[data].memo + "</td>");
var tdData2 = jQuery("<td>" + arrSensorInfo[data].width + "</td>");
var tdData3 = jQuery("<td>" + arrSensorInfo[data].height + "</td>");
$("#tblSensorList").find("tr").eq(0).append(tdData0);
$("#tblSensorList").find("tr").eq(1).append(tdData1);
$("#tblSensorList").find("tr").eq(2).append(tdData4);
$("#tblSensorList").find("tr").eq(3).append(tdData2);
$("#tblSensorList").find("tr").eq(4).append(tdData3);
i++;
}
//*****F値設定
for (var i=0; i < arrFInfo.length; i++) {
var tdData0 = jQuery("<tr><td>" + arrFInfo[i] + "</td></tr>");
$("#tblMain").append(tdData0);
}
//*****表示場所
for (var j=0; j < arrMMInfo.length; j++) {
var tblData0 = jQuery("<td colspan='2'><span id='lensMM" + j + "'></span>mm</td>");
var tblData1 = jQuery("<td colspan='2'><span id='lens35MM'>" + arrMMInfo[j] + "mm</span></td>");
var tblData2 = jQuery("<td>焦点範囲(m)</td>");
var tblData3 = jQuery("<td>被写界深度(m)</td>");
$("#tblMain").find("tr").eq(0).append(tblData0);
$("#tblMain").find("tr").eq(1).append(tblData1);
$("#tblMain").find("tr").eq(2).append(tblData2);
$("#tblMain").find("tr").eq(2).append(tblData3);
for (var i=0; i<arrFInfo.length; i++) {
var tblData4 = jQuery("<td><span id='fRange" + j + i + "'></span></td>");
var tblData5 = jQuery("<td><span id='fDepth" + j + i + "'></span></td>");
$("#tblMain").find("tr").eq(i+3).append(tblData4);
$("#tblMain").find("tr").eq(i+3).append(tblData5);
}
}
//*****初期設定
$("#film3")[0].checked = true;
this.recalcData();
//**********関数
//*****焦点距離の算出
function calcFocusLength(width, height, length) {
var diag35 = calcDiag(arrSensorInfo[0].width, arrSensorInfo[0].height);
var diag = calcDiag(width, height);
return (diag / diag35 * length);
}
//*****対角線の長さの算出
function calcDiag(width, height) {
return Math.sqrt(width*width + height*height);
}
//被写界深度
function calcRearDepth(index, f, depth) {
var confusion = calcDiag(arrSensorInfo[index].width, arrSensorInfo[index].height) / 1300;
return confusion * f * Math.pow(($("#tbDist").val() * 1000.0), 2) / (Math.pow(depth, 2) - confusion * f * $("#tbDist").val() * 1000.0)
}
function calcFrontDepth(index, f, depth) {
var confusion = calcDiag(arrSensorInfo[index].width, arrSensorInfo[index].height) / 1300;
return confusion * f * Math.pow(($("#tbDist").val() * 1000.0), 2) / (Math.pow(depth, 2) + confusion * f * $("#tbDist").val() * 1000.0)
}
//被写界深度
function calcDepth(index, f, depth) {
if (calcRearDepth(index, f, depth) >= 0) {
return (calcFrontDepth(index, f, depth) / 1000.0 + calcRearDepth(index, f, depth) / 1000.0).toFixed(3);
}
return "";
}
//焦点範囲
function calcDepthLength(index, f, depth) {
if (calcRearDepth(index, f, depth) >= 0) {
return (Number($("#tbDist").val()) - calcFrontDepth(index, f, depth) / 1000.0).toFixed(3) + "~" + (Number($("#tbDist").val()) + calcRearDepth(index, f, depth) / 1000.0).toFixed(3);
}
return (Number($("#tbDist").val()) - calcFrontDepth(index, f, depth) / 1000.0).toFixed(3) + "~∞";
}
//**********メインルーチン
//*****選択されているの取得
function getChekedRadioButton() {
for (var i=0; i <= $("input[name='rbSensorSize']").length; i++) {
if ($("input[name='rbSensorSize']")[i].checked) {
return i;
}
}
return 0;
}
//*****入力エラー処理
function errorCheck() {
var errorText = "";
if (jQuery.isNumeric($("#tbDist").val()) ==false ) { errorText="数値を入力してくださいでござる"; }
$("#lblError").text(errorText);
}
//*****再計算処理
function recalcData(index) {
//入力エラー処理
errorCheck();
//選択されているRadioの取得
index = getChekedRadioButton();
//焦点距離の計算
for (var i=0; i < arrMMInfo.length; i++) {
var calcLength = (calcFocusLength(arrSensorInfo[index].width, arrSensorInfo[index].height, arrMMInfo[i])).toFixed(1);
$("#lensMM" + i).text(calcLength);
}
//被写界深度と焦点の合う距離の計算
for (var i=0; i < arrMMInfo.length; i++) {
for (var j=0; j < arrFInfo.length; j++) {
var result0 = calcDepth(index, arrFInfo[j], calcFocusLength(arrSensorInfo[index].width, arrSensorInfo[index].height, arrMMInfo[i]));
$("#fDepth"+i+j).text(result0);
var result1 = calcDepthLength(index, arrFInfo[j], calcFocusLength(arrSensorInfo[index].width, arrSensorInfo[index].height, arrMMInfo[i]));
$("#fRange"+i+j).text(result1);
}
}
}
//**********終わり
}}
#include_js(http://code.jquery.com/jquery-1.9.1.min.js)
&topicpath()&aname(top)
#divclass(pageTitle){センサーサイズ別被写界深度計算表}
**初めに
#divclass(h5){初めに}
-センサーサイズによって被写界深度が変わる(ボケやすいボケにくい)などという話をよくしますが、実際にセンサーサイズによってどの程度の変化があるのかを計算してみるページです。
-各レンズのF値とレンズの焦点距離別の被写界深度の深さ、実際に焦点が合う範囲のカメラからの距離を計算することができます。
-※あくまで理論上の計算値であり、実際はカメラ、レンズ、その他条件により異なります
-※計算違い等や感想などありましたら、ページ最下部のコメント欄で教えてくれると嬉しいです
#divclass(h5){使い方}
-被写体までの距離を入力します
--入力し直したら「再計算」ボタンを押してください
-センサーサイズを選択します
-レンズの焦点距離別の被写界深度と、カメラからの焦点が合う範囲の距離が表示されます
-ブラウザを横に長くすると見やすいです
#right(){&link_anchor(top){▲}&link_anchor(bottom){▼}}
**被写界深度と焦点範囲の計算
#divclass(h5){各種データ設定}
#divclass(h6){被写体までの距離入力}
#html2(){
<table border="0">
<tr>
<td class="in">被写体までの距離<input type="text" id="tbDist" size="6" value="3.00">m(メートル)</td>
<td><input type="button" id="btnReculc" value="再計算 " onclick="recalcData()"></td>
</tr>
</table>
<font color="red"><span id="lblError"></span></font>
}
#divclass(h6){センサーサイズの選択}
#html2(){
<table border="1" id="tblSensorList">
<tr><td>選択</td></tr>
<tr><td>センサーサイズ</td></tr>
<tr><td>機種例</td></tr>
<tr><td>幅(mm)</td></tr>
<tr><td>高さ(mm)</td></tr>
</table>
<span id="lblCaption"></span>
}
#divclass(h5){計算結果}
#html2(){
<table border="1" id="tblMain">
<tr><td>レンズ</td></tr>
<tr><td>35mm換算</td></tr>
<tr><td>絞り</td></tr>
</table>
}
**Nikon1関連商品のまとめ
***Nikon1関連商品まとめ(外部サイト)
-[[http://astore.amazon.co.jp/matowiki-22>>http://astore.amazon.co.jp/matowiki-22]]
#right(){&link_anchor(top){▲}&link_anchor(bottom){▼}}
**関連ページ
#ls3(カメラまとめ)
**Nikon1の発売状況
#divclass(h5){新発売機種}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B009VWK66G" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B009VWK9G8" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B009VWKD2S" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00AY7ER5I" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00AY7F3ZG" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#divclass(h5){新発売レンズ}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00AY7GU1W" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B00AY7FC34" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#divclass(h5){比較的評価の高いレンズ}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B008V62S7I" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B009A77Q1K" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
#html2(){<iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=matowiki-22&o=9&p=8&l=as4&m=amazon&f=ifr&ref=ss_til&asins=B005OD1CH8" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>}
**コメント
- 投稿のテスト -- 管理人 (2013-02-05 23:04:15)
#comment()
#right(){&link_anchor(top){▲}&link_anchor(bottom){▼}}
----
#right(){&lastmod()&aname(bottom)}
#right(){&trackback()}
#javascript(){{
//**********定数宣言
//*****絞り定数 レンズ定数 フィルム定数
var arrFInfo = [1.4, 1.8, 2.0, 2.8, 4.0, 5.6, 8.0, 11.0, 16.0, 22.0, 32.0];
var arrMMInfo = [18,28,35,50,80,135,200,300];
var arrSensorInfo = {
0: {name: '35mm', width: 36, height: 24, memo:'フルサイズ機'},
1: {name: 'APS-C', width: 23.4, height: 16.7, memo:'NEXなど'},
2: {name: '4/3"', width: 17.3, height: 13.0, memo:'マイクロフォーサーズ'},
3: {name: '1"', width: 13.2, height: 8.8, memo:'Nikon1など'},
4: {name: '2/3"', width: 8.8, height: 6.6, memo:'FUJIFILM X20など'},
5: {name: '1/1.7"', width: 7.6, height: 5.7, memo:'PowerShot S110など'},
6: {name: '1/2.3"', width: 6.2, height: 4.6, memo:'コンデジの多く'}
};
//**********html生成
//*****センサーサイズhtml生成
var i = 0;
for (var data in arrSensorInfo) {
var tdData0 = jQuery("<td width='100pix'><input type='radio' name='rbSensorSize' id='film" + i + "' onclick='recalcData()'></td>");
var tdData1 = jQuery("<td>" + arrSensorInfo[data].name + "</td>");
var tdData4 = jQuery("<td>" + arrSensorInfo[data].memo + "</td>");
var tdData2 = jQuery("<td>" + arrSensorInfo[data].width + "</td>");
var tdData3 = jQuery("<td>" + arrSensorInfo[data].height + "</td>");
$("#tblSensorList").find("tr").eq(0).append(tdData0);
$("#tblSensorList").find("tr").eq(1).append(tdData1);
$("#tblSensorList").find("tr").eq(2).append(tdData4);
$("#tblSensorList").find("tr").eq(3).append(tdData2);
$("#tblSensorList").find("tr").eq(4).append(tdData3);
i++;
}
//*****F値設定
for (var i=0; i < arrFInfo.length; i++) {
var tdData0 = jQuery("<tr><td>" + arrFInfo[i] + "</td></tr>");
$("#tblMain").append(tdData0);
}
//*****表示場所
for (var j=0; j < arrMMInfo.length; j++) {
var tblData0 = jQuery("<td colspan='2'><span id='lensMM" + j + "'></span>mm</td>");
var tblData1 = jQuery("<td colspan='2'><span id='lens35MM'>" + arrMMInfo[j] + "mm</span></td>");
var tblData2 = jQuery("<td>焦点範囲(m)</td>");
var tblData3 = jQuery("<td>被写界深度(m)</td>");
$("#tblMain").find("tr").eq(0).append(tblData0);
$("#tblMain").find("tr").eq(1).append(tblData1);
$("#tblMain").find("tr").eq(2).append(tblData2);
$("#tblMain").find("tr").eq(2).append(tblData3);
for (var i=0; i<arrFInfo.length; i++) {
var tblData4 = jQuery("<td><span id='fRange" + j + i + "'></span></td>");
var tblData5 = jQuery("<td><span id='fDepth" + j + i + "'></span></td>");
$("#tblMain").find("tr").eq(i+3).append(tblData4);
$("#tblMain").find("tr").eq(i+3).append(tblData5);
}
}
//*****初期設定
$("#film3")[0].checked = true;
this.recalcData();
//**********関数
//*****焦点距離の算出
function calcFocusLength(width, height, length) {
var diag35 = calcDiag(arrSensorInfo[0].width, arrSensorInfo[0].height);
var diag = calcDiag(width, height);
return (diag / diag35 * length);
}
//*****対角線の長さの算出
function calcDiag(width, height) {
return Math.sqrt(width*width + height*height);
}
//被写界深度
function calcRearDepth(index, f, depth) {
var confusion = calcDiag(arrSensorInfo[index].width, arrSensorInfo[index].height) / 1300;
return confusion * f * Math.pow(($("#tbDist").val() * 1000.0), 2) / (Math.pow(depth, 2) - confusion * f * $("#tbDist").val() * 1000.0)
}
function calcFrontDepth(index, f, depth) {
var confusion = calcDiag(arrSensorInfo[index].width, arrSensorInfo[index].height) / 1300;
return confusion * f * Math.pow(($("#tbDist").val() * 1000.0), 2) / (Math.pow(depth, 2) + confusion * f * $("#tbDist").val() * 1000.0)
}
//被写界深度
function calcDepth(index, f, depth) {
if (calcRearDepth(index, f, depth) >= 0) {
return (calcFrontDepth(index, f, depth) / 1000.0 + calcRearDepth(index, f, depth) / 1000.0).toFixed(3);
}
return "";
}
//焦点範囲
function calcDepthLength(index, f, depth) {
if (calcRearDepth(index, f, depth) >= 0) {
return (Number($("#tbDist").val()) - calcFrontDepth(index, f, depth) / 1000.0).toFixed(3) + "~" + (Number($("#tbDist").val()) + calcRearDepth(index, f, depth) / 1000.0).toFixed(3);
}
return (Number($("#tbDist").val()) - calcFrontDepth(index, f, depth) / 1000.0).toFixed(3) + "~∞";
}
//**********メインルーチン
//*****選択されているの取得
function getChekedRadioButton() {
for (var i=0; i <= $("input[name='rbSensorSize']").length; i++) {
if ($("input[name='rbSensorSize']")[i].checked) {
return i;
}
}
return 0;
}
//*****入力エラー処理
function errorCheck() {
var errorText = "";
if (jQuery.isNumeric($("#tbDist").val()) ==false ) { errorText="数値を入力してくださいでござる"; }
$("#lblError").text(errorText);
}
//*****再計算処理
function recalcData(index) {
//入力エラー処理
errorCheck();
//選択されているRadioの取得
index = getChekedRadioButton();
//焦点距離の計算
for (var i=0; i < arrMMInfo.length; i++) {
var calcLength = (calcFocusLength(arrSensorInfo[index].width, arrSensorInfo[index].height, arrMMInfo[i])).toFixed(1);
$("#lensMM" + i).text(calcLength);
}
//被写界深度と焦点の合う距離の計算
for (var i=0; i < arrMMInfo.length; i++) {
for (var j=0; j < arrFInfo.length; j++) {
var result0 = calcDepth(index, arrFInfo[j], calcFocusLength(arrSensorInfo[index].width, arrSensorInfo[index].height, arrMMInfo[i]));
$("#fDepth"+i+j).text(result0);
var result1 = calcDepthLength(index, arrFInfo[j], calcFocusLength(arrSensorInfo[index].width, arrSensorInfo[index].height, arrMMInfo[i]));
$("#fRange"+i+j).text(result1);
}
}
}
//**********終わり
}}
表示オプション
横に並べて表示:
変化行の前後のみ表示: