botに画像をツイートさせようとしたら、「画像の相対パスではなく絶対パスを送ってくれないとダメです!」と言われてしまいました。そのときはその画像があるフォルダーまで「C:\Users\Documents\・・・\image.png」と書いきましたが、毎回これをやるのはだるいですよね。それで今回はその問題を解決してくれる「sketchPath()」と「dataPath()」について紹介しようと思います。sketchPath()とdataPath()百聞は一見に如かず、まずは下のコードと出力データをご覧ください。なんとなくわかった方もいると思いますが、詳しく説明していきます。フォルダやファイルの構成フォルダとファイルは下のような構成になっています。sketchPath()sketchPath()は実行するpdeファイルが入っているフォルダーの絶対パスを返してくれる命令です。今回の場合は「C:\Users\Documents\path_search」を返してくれます。そのフォルダー内のフォルダやファイルを参照するときは「sketchPath("image1.png")」や「sketchPath("data/image2.png")」と書きます。まとめるとこんな感じです。dataPath()次にdataPath()についてです。dataPath()は実行するpdeファイルと同じフォルダーの中にあるdataフォルダー絶対パスを返してくれます。今回の場合は「C:\Users\Documents\path_search\data」を返してくれます。「sketchPath("data/image2.png")」は「dataPath("image2.png")」と書き換えることが可能です。ここで注意なのですがsketchPath()の場合は「sketchPath()」と書くだけで絶対パスを返してくれましたが、dataPath()の場合はカッコの中にString型を入れなければいけません。「C:\Users\Documents\path_search\data」と返してほしいときは「dataPath("")」と書きしょう。まとめるとこんな感じです。おわりに今までProcessingで絶対パスが指定できないイライラがこれで解消できました!便利な命令ですので、ぜひ使っていきましょう。PGraphicsでジェネラティブアート月別アーカイブはてなブログをはじめよう!ZawaWorksさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。