ダイナミックレンジを圧縮するような光学フィルタを捜しています。
例えば10lux~10万luxを2桁範囲内照度に、リニア若しくは対数で圧縮してくれるようなフィルタです。
サングラスは、おそらく紫外線+特定波長のカットフィルタだと思うのですが、もしかして上記希望をかなえてくれるでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (2件)

ダメです。



ダイナミックレンジが圧縮されたように感じるのは目の特性に
よるもので、
サングラス自体は周波数特性をもった抵抗と等価です。
    • good
    • 0

入射光の強度により透過率が変化するフィルタという意味であれば、ラピッドサングラスに代表されるようなものを使うことが出来るでしょう。


しかしこれらは化学反応により分子が変化して吸収係数が変わる物であり、応答速度は遅いです。
しかし、上記は強い光も弱い光も強い光に合わせて全体に減衰させるものであり、弱い光はそのままで強い光だけを減衰させるようなものではありません。

先のtntさんの回答にあるように、サングラスの場合は目の特性自体が対数だからです。

光の強度に応じて透過率が異なるような現象を取り扱う非線形光学という分野の学問もありますが、汎用的にたとえばカメラのようなものに使える物はないのが現状です。
もし、そんなフィルタが出来たら今のカメラから絞りが必要なくなって、さらには自動車、航空機の窓など用途が沢山ありそうですが、現時点ではそういう理想的なものはありませんね。

用途が特殊な物であれば非線形現象や、先に述べた化学反応を利用した物が使えますが。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qフィルタで検索した行をマクロで削除する時のコード。

フィルタで検索した行を一括して削除するマクロを作りました。
記録して加工したマクロで今のところ動くのですが、
理解不能の箇所があるので教えてください。

下記マクロはC列の空白行をフィルターで選択して、表示された行を削除するマクロです。(データは2行目から始まっていて、フィルターは1行目に行います。また、行は全て連続しています。)
また、コメントを各コードにつけています。

ここで、コメント内の(1)で示した箇所は2行目を選ぶことになっているのですが、何故これで良いのでしょう?2行目のデータがフィルターにより隠れることもあるのですが、このコードできちんと動きます。
可視セルしか削除しないのなら、分かるのですが、
そのようなコードも無いようですし・・・
なぜこのコードで動くのか教えてください。

Rows("1:1").Select  '1行目を選ぶ
Selection.AutoFilter  'オートフィルター
Range("C1").Select   'C1を選ぶ
Selection.AutoFilter Field:=3, Criteria1:="=" '空白行を探す。Field3は不明です
Rows("2:2").Select  '(1) 2行目を選択
Range(Selection, Selection.End(xlDown)).Select '2行目から連続した最後の行までを選択
Selection.Delete Shift:=xlUp  '選んだところをDelして上に詰める。
Range("C1").Select  'C1を選ぶ
Selection.AutoFilter Field:=3  'フィルタ解除

基本的なことかもしれませんが、ご教示頂ければ幸いです。
よろしくお願いします。

フィルタで検索した行を一括して削除するマクロを作りました。
記録して加工したマクロで今のところ動くのですが、
理解不能の箇所があるので教えてください。

下記マクロはC列の空白行をフィルターで選択して、表示された行を削除するマクロです。(データは2行目から始まっていて、フィルターは1行目に行います。また、行は全て連続しています。)
また、コメントを各コードにつけています。

ここで、コメント内の(1)で示した箇所は2行目を選ぶことになっているのですが、何故これで良いのでしょう?2行...続きを読む

Aベストアンサー

こんにちは。

簡単に言うと
フィルターを掛けて抽出された範囲を選択して何かしらの処理をさせるとその処理の対象は抽出されたセルのみになるということです。

例えば、4,7行が抽出されていてその2行を選択すると、実際には、4,7行だけではなく、抽出されていない5,6行も選択された状態になり、選択範囲は、4,5,6,7行なりますが、処理の対象はあくまでも抽出された4,7行のみになるということです。
 
ですから、質問のように抽出されてない行を含めて選択しても問題はないことになります。
もちろんそのフィルターを掛ける表の範囲であることはいうまでもありません。
 
但し、選択範囲をループして処理する場合は、選択範囲全て(例では、4567行)が処理対象になりますのでそこは注意が必要です。

通常このような場合は、可視セルのみ選択して処理するのが普通です。
以上です。

Q「A,若しくはB」「A若しくは,B」「A若しくはB」

よろしくお願いします。

コンマの位置は,どこに書くのが良いのでしょうか?
個人的には,読みやすければ良いと思うのですが。

「A,若しくはB」「A若しくは,B」「A若しくはB」

文学的には,こうだ。
出版界では,こうだ。
といった具合に,アドバイスお願い致します。

Aベストアンサー

「A若しくはB」ですね。
コンマ(句点)は列記する時に使います。
すなわち「A,B,CまたはD」という感じです。

Q特定のセルをフィルタするマクロを作りたい

特定のキーワードが含まれるセルをフィルタするマクロを作りたいです。

使用環境はExcel2010です。

口頭ではわかりにくいので、画像を添付します。
添付画像のように、それぞれの人物名と点数が一覧になった表があります。

特定の名前の人で点数が一定以下の行をフィルターしたいのですが、毎回フィルターで名前を選ぶのが面倒なので、マクロの記録機能で下記のマクロを作成しました。

Selection.AutoFilter
ActiveSheet.Range("$A$1:$C$7").AutoFilter Field:=2, Criteria1:="=鈴木", _
Operator:=xlOr, Criteria2:="=田中"
ActiveSheet.Range("$A$1:$C$7").AutoFilter Field:=3, Criteria1:="<70", _
Operator:=xlAnd

上記のマクロで、「田中」と「鈴木」のみ、点数が70点に満たなかった行を抜き出しています。

しかし、他部署の人物も調査の対処に含めるため、E2:E7セルに調査したい対象の名前を入れ、自動的にセルに入力された名前でフィルタリングされるようにしたいです。

この際のマクロの記載方法を知りたいです。

*部署によって人数が異なるため、E2:E7セルに入力する名前がすべて埋まるとは限りません。
*実際の名前と点数は毎月新しいExcelブックで送られてくるので、フィルター用のExcelシートにコピーペーストで張り付けて使用予定です。
*記載されている名前や点数は例です。

特定のキーワードが含まれるセルをフィルタするマクロを作りたいです。

使用環境はExcel2010です。

口頭ではわかりにくいので、画像を添付します。
添付画像のように、それぞれの人物名と点数が一覧になった表があります。

特定の名前の人で点数が一定以下の行をフィルターしたいのですが、毎回フィルターで名前を選ぶのが面倒なので、マクロの記録機能で下記のマクロを作成しました。

Selection.AutoFilter
ActiveSheet.Range("$A$1:$C$7").AutoFilter Field:=2, Criteria1:="=鈴木", _
Oper...続きを読む

Aベストアンサー

こんにちは!

お使いのバージョンがExcel2010というコトですので、一例です。
(Excel2007以降で動くと思います)

Sub Sample1()
Dim i As Long, lastRow As Long, str As String, myArray
lastRow = Cells(Rows.Count, "E").End(xlUp).Row
If lastRow > 1 Then
For i = 2 To lastRow
str = str & Cells(i, "E") & ","
Next i
str = Left(str, Len(str) - 1)
myArray = Split(str, ",")
Range("A1").AutoFilter field:=2, Criteria1:=myArray, Operator:=xlFilterValues
End If
End Sub

※ C列点数でのフィルタは考慮していません。

こんな感じではどうでしょうか?m(_ _)m

こんにちは!

お使いのバージョンがExcel2010というコトですので、一例です。
(Excel2007以降で動くと思います)

Sub Sample1()
Dim i As Long, lastRow As Long, str As String, myArray
lastRow = Cells(Rows.Count, "E").End(xlUp).Row
If lastRow > 1 Then
For i = 2 To lastRow
str = str & Cells(i, "E") & ","
Next i
str = Left(str, Len(str) - 1)
myArray = Split(str, ",")
Range("A1").AutoFilter f...続きを読む

Q照度が2倍になると何倍明るくなるのですか?

5000Luxと10000Luxでは、後者の方が2倍明るくなるのですか?
それとも2乗に比例して明るくなるのですか?

Aベストアンサー

ルクスは、平面に対する明るさですので、
2倍になります。

参考URL:http://ja.wikipedia.org/wiki/%E3%83%AB%E3%82%AF%E3%82%B9

QエクセルのVBAマクロを使用したフィルタの掛け方

エクセルで オートフィルターを自動で実行するような
プログラムを組んでみたいのですが、アドバイスを
よろしくお願いします。
A1セルに入力した数字を元にA3~B10のデーターに自動でフィルターを実行し表示させたいのです。

よろしお願いします。

Aベストアンサー

こんにちは。
以下のマクロを参考にしてください。
マクロ貼り付け方法: 入力シートをマウス右Click → 「コードの表示」→ 表示される画面に貼り付け

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$A$1" Then
    With ActiveSheet
      .Range("A2:A10").AutoFilter Field:=1, Criteria1:="=" & .Range("A1"), Operator:=xlAnd
    End With
  End If
End Sub

Q間げき率40%、土粒子の密度2.60g/cm³の土がある。この土の乾燥密度はいくらか。 上記の問題の

間げき率40%、土粒子の密度2.60g/cm³の土がある。この土の乾燥密度はいくらか。

上記の問題の計算式を教えていただける方がいらっしゃれば幸いです。どうがよろしくお願い致します。

Aベストアンサー

間げき率=土粒子体積/全体積=0.4・・・①
土粒子密度=土粒子質量/土粒子体積=2.6・・・②
乾燥密度=土粒子質量/全体積

①×②=(土粒子体積/全体積)×(土粒子質量/土粒子体積)=
(土粒子体積/土粒子体積)×(土粒子質量/全体積)=土粒子質量/全体積=
乾燥密度

乾燥密度=①×②=0.4×2.6=1.04g/cm³

Qaccess マクロでのフィルタの解除の方法

フィルタをかける時は、

***************************
アクション:フィルタの実行
フィルタ名:なし
Where条件式:[フィールド1]="あ"
***************************

で、できますが、
フィルタを解除する時はどのようなマクロを作ればいいのでしょうか?

VBAでやるなら、
Me.Form.FilterOn = False
をマクロでやりたいです。

アドバイスよろしくお願いします。

Aベストアンサー

> VBAでやるなら、
> Me.Form.FilterOn = False
> をマクロでやりたいです。

ご質問の趣旨が「並べ替えは維持した状態で、フィルタだけ解除したい」という
ことでしたら、以下の方法で対応できます。


a)フィルタの解除専用の場合
***************************
アクション:コマンドの実行
コマンド:フィルタをすべて解除
***************************
※フィルタが適用されていない状態で実行するとエラーになります。
  (コマンドボタンで実行させる場合、フィルタ未適用時はボタンを使用不可
  にするか、マクロの『条件』欄に「~.FilterOn = True」の記述が必要、と)
  また、フォームのプロパティシートの『データ』タブにある『フィルタ』欄(VBAでの
  Me.Form.Filterに相当)に設定された文字列も削除されます。


b)フィルタの適用/解除を交互に切り替える場合
***************************
アクション:コマンドの実行
コマンド:フィルタの実行/解除
***************************
※当該フォームにフィルタが設定されていない場合、エラーとなります。
 (フォームのプロパティシートの『データ』タブにある『フィルタ』欄に
  フィルタとなる文字列が設定されていればOk:)
 (フィルタが適用済みなら解除、解除済みなら適用、となります)


因みに、マクロのデザインビューで、『デザイン』リボンの『表示/非表示』グループ
内にある『すべてのアクションを表示』をオンにしてもよいのでしたら、以下の
方法もあります。
(VBAでの方法をご存知の上でマクロで対応ということは、勤務先のセキュリティ
 方針によるものかと思いますので、この方法も不可かもしれませんが(汗))

***************************
アクション:値の代入
アイテム:Forms!フォーム名.Form.FilterOn
式:False
***************************

※サブフォームの場合の『アイテム』は以下のようになります:
 Forms!フォーム名!サブフォームコントロール名.Form.FilterOn

> VBAでやるなら、
> Me.Form.FilterOn = False
> をマクロでやりたいです。

ご質問の趣旨が「並べ替えは維持した状態で、フィルタだけ解除したい」という
ことでしたら、以下の方法で対応できます。


a)フィルタの解除専用の場合
***************************
アクション:コマンドの実行
コマンド:フィルタをすべて解除
***************************
※フィルタが適用されていない状態で実行するとエラーになります。
  (コマンドボタンで実行させる場合、フィルタ未適用時はボタンを使用不可
  にするか、...続きを読む

Q全天空照度

一級建築士試験に向けて勉強しています。
建築環境工学において設計用全天空照度は
特に明るい日:50,000lx
明るい日:30,000lx
普通の日:15,000lx
暗い日:5,000lx
快晴の青空:10,000lx
とありますが、快晴の青空だけ”日”ではなく、”空”という表現で他と異なります。
日と空を使い分けていることに意味があるのでしょうか?
明るい日と快晴はかぶるような気もするのですが・・・

Aベストアンサー

こんばんは。

お使いの教材では「特に明るい日」のことを「薄曇りの日(空)」とかと解説してないでしょうか?
それとも問題の傾向が変わっちゃったのかな?

建築で言う全天空照度とは天空光だけの照度と書いてあると思います。
じゃあ天空光ってなに?と言うと、直射日光を除く光です。
多分ココで「???」となってしまってると思います。
でもココまで押さえれば後は簡単です。
太陽光は雲や空気中の塵などにぶつかると乱反射、拡散します。
その反射した光が天空光なのですよ。


だから薄曇り(特に明るい日)の方が直射日光が雲に反射し天空光が増える
つまり快晴より全天空照度高いとなるのです。


この辺りは少々ややこしいわりに毎年のように出題されるような分野でも無かったと記憶しております。
この分野のエキスパートになるとかでなければ、変に語句の一言一句、全てを完璧に理解しようとせずに
全体として「こんなもんなんだな」と頭に入れれば十分だと思いますよ?・・・・多分。
多分ね、多分。この辺は問題出題の傾向が変わってなければ過去問やるだけで十分だって!多分。
え?新傾向?うーん・・・多分いけるって!多分ね!多分!!!

それでは試験勉強頑張って下さい。

こんばんは。

お使いの教材では「特に明るい日」のことを「薄曇りの日(空)」とかと解説してないでしょうか?
それとも問題の傾向が変わっちゃったのかな?

建築で言う全天空照度とは天空光だけの照度と書いてあると思います。
じゃあ天空光ってなに?と言うと、直射日光を除く光です。
多分ココで「???」となってしまってると思います。
でもココまで押さえれば後は簡単です。
太陽光は雲や空気中の塵などにぶつかると乱反射、拡散します。
その反射した光が天空光なのですよ。


だから薄曇り(特に明るい...続きを読む

QExcel2003でシート保護(オートフィルタ使用にはチェック)するとマクロのオートフィルタでエラーになる

QNo.3901563で回答いただき、Excelの試用で保護後のオートフィルタは使えないのはわかりました。
そこで予めオートフィルタを設定し、シートに保護をかけました。
Excelの画面上ではオートフィルタは使用できます。
マクロよりオートフィルタの抽出条件を変更するコマンドを実行すると「保護されたシートに対して、このコマンドは実行できません」と表示されます。コマンドは新しいマクロの記録で操作を記録したものです。記録したときは特にエラーはでませんでした。

Selection.AutoFilter Field:=2, Criteria1:="AAA"

マクロのコマンドでは保護のかかったシートのオートフィルタの抽出条件を変更することは出来ないのでしょうか。
マクロの前後にシート保護を解除するコマンドを入れようかとも思ったのですが、保護にパスワードがかかっており、本末転倒となるもので。

Aベストアンサー

こんにちは。

'標準モジュールで、自動設定

Sub Auto_Open()
Const PWS As String = "PS" 'パスワード
 With Worksheets("Sheet2")
  .Unprotect PWS
  .Protect PWS, UserInterFaceOnly:=True
  '以下をつければ、手動でもオートフィルタは使えます。
  .EnableAutoFilter = True
 End With
End Sub

'-----------------------------------------------
UserInterFaceOnly:=True のオプションをつければ、マクロで処理できますし、また、EnableAutoFilter にすれば、保護された状態で、オートフィルタは使えます。

なお、オートフィルタは、こんな感じです。

Sub Test1()
With Range("A1").CurrentRegion
 .AutoFilter Field:=2, Criteria1:="aaa"
End With
End Sub

こんにちは。

'標準モジュールで、自動設定

Sub Auto_Open()
Const PWS As String = "PS" 'パスワード
 With Worksheets("Sheet2")
  .Unprotect PWS
  .Protect PWS, UserInterFaceOnly:=True
  '以下をつければ、手動でもオートフィルタは使えます。
  .EnableAutoFilter = True
 End With
End Sub

'-----------------------------------------------
UserInterFaceOnly:=True のオプションをつければ、マクロで処理できますし、また、EnableAutoFilter にすれば、保護された状態...続きを読む

Q照度、光束について

照度についての素朴な質問です。
強い光のあたっている箇所に更に弱い光を当てても明るくなったように感じないですよね。でも、その部分の光束は増える訳なので、照度という単位で考えると明るくなったことになるのですか?この理解で間違いはないのでしょうか。

Aベストアンサー

> 強い光のあたっている箇所に更に弱い光を当てても明るくなったように感じないですよね。

人間の感覚器で感じる「感覚の大きさ」は、検知する物理量の対数に比例し、元の値に対して一定値だけ大きくなったときに初めて「大きくなった」と感じる、という特性があります(下記URL:ウェーバーの実験)。

ご質問の場合、「明るくなった」と感じる閾値以下ではあっても、物理的な「明るさ」="照度"は、追加した「弱い光」の分だけ確実に増えています。

参考URL:http://www.sky.sannet.ne.jp/mikeneko/psychology/history02.htm


人気Q&Aランキング

おすすめ情報