質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

負荷分散

負荷分散とは、並列に運用されている機器間でできる限り負担が均等になるように、処理を分散し割り当てることです。 負荷分散は専用機器の使用、DNSサーバの設定、サーバに負荷分散ソフトウェアを導入することで実現できます。

Q&A

解決済

1回答

1712閲覧

SWIFT UIBezierPathのプロパティを動的変更した時の負荷

kevin.c.michael

総合スコア27

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

負荷分散

負荷分散とは、並列に運用されている機器間でできる限り負担が均等になるように、処理を分散し割り当てることです。 負荷分散は専用機器の使用、DNSサーバの設定、サーバに負荷分散ソフトウェアを導入することで実現できます。

0グッド

0クリップ

投稿2018/03/22 12:53

編集2018/03/22 12:55

こんにちは

少し変わった内容になりますが、答えてもらえると幸いです。

  1. UIGestureRecognizerでドラッグ処理を加えます。
  2. ドラッグした距離を計算します。
  3. 計算した値をUIBezierPathの座標に入れて描画内容の形を変えたとします。

この時、ドラッグするたびに描画内容を消して再描画することで描画内容を更新することは、処理に大きな負荷を与えることになるかと思いますが、最良の方法といえるでしょうか?

自分の考えでは、そもそもプログラミング全般においてオブジェクトのサイズなんかを変える時、再描画をしているのはよくあることなのではないかな?っと想像しています。
(例えばサイズを0から100サイズまで、100フレームのアニメーションで拡大する時、100フレーム分再描画を繰り返しているのではないか?ということです。)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

前後でどれくらい変化するかによりますね、コマ送りのアニメーションならフレームごとに完全に描き替えになります。
図形の形が変化したことによって再描画しないといけない部分が簡単に割り出せるなら、setNeedsDisplay(_:)で部分的に無効化&再描画するのがパフォーマンス的には一番最良です。
ただ、それが難しいとか、結局ほとんどを再描画するならビュー全体を描き直してもいいと思います。

あとは頻度とか用途によると思います。
ユーザーが操作している間だけ行う再描画なら、ピークは大きくても全体の時間で均してしまえばたいしたことはありません。
ゲームとかだと常にうねうね動いていてそれなりにパワーを食っていてもそれほど気にもされないでしょうけど、ツール系で不要な動きだったらバッテリーの減りが早いと文句を言われるかもしれません。

一旦普通に作ってみて、後でパフォーマンス測ってちょっとこれは、、、っていうレベルなら調整する、としたほうがいいと思いますよ。
最近はパワーが余りあるのでこの処理結構重いかも、と思っても動かしてみたら何の問題もなかった、というのはよくあるので。

投稿2018/03/22 15:40

toki_td

総合スコア2850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問