官术网_书友最值得收藏!

Basic utility functions

The last section of the chapter mentions some utility functions, which will be used in examples across the book, or just can be useful in your projects.

  • ofMap( v, v0, v1, out0, out1 ): This function performs linear interpolation of a float value v from the segment [v0, v1] to the segment [out0, out1]. Note, it does not control boundaries of v, and just uses the formula (v-v0)/(v1-v0)*(out1-out0) + out0. For controlling boundaries, call this function with the last optional parameter set to true: ofMap( v, v0, v1, out0, out1, true ). Then the result will be clamped to [out0, out1].
  • ofClamp( v, v0, v1 ): This function clamps the float value v to the segment [v0, v1] that is returns min( max( v, v0 ), v1 ).
  • ofRandom( a, b ): This function generates a pseudo-random number in the segment [a, b]. (Actually, it returns a value always less than that of b).
  • ofNoise ( x ), ofNoise( x, y ), ofNoise( x, y, z ), and ofNoise( x, y, z, w ):These functions return Perlin noise value, see the details in Appendix B, Perlin Noise.
  • ofToString( v ): This function converts the int or float value v into string-returning value
  • ofToInt( s ) and ofToFloat( s ): These functions convert the string s into int or float returning values respectively.
  • ofGetWidth() and ofGetHeight(): These functions return the current width and height of the project's screen, in pixels.
  • ofGetElapsedTimef(): This function returns the value of seconds lapsed from the project's start. This is a float value, measured with millisecond accuracy. For example, returned value 123.4 means 123 seconds and 400 milliseconds.
  • ofShowCursor() and ofHideCursor(): These functions show and hide the mouse cursor.

For printing information into a console window, you can use the standard cout stream. For example, for printing time from the project's start, use the following code:

cout << "Time: " << ofGetElapsedTimef() << endl;

Here, endl is a standard constant, which means starting a new line in the console.

主站蜘蛛池模板: 漾濞| 九龙城区| 西华县| 萝北县| 巴林左旗| 明水县| 丰宁| 孟州市| 泽州县| 静安区| 鄂托克前旗| 台湾省| 开鲁县| 瓮安县| 丰镇市| 任丘市| 京山县| 大关县| 江口县| 金溪县| 阿拉善盟| 远安县| 巴楚县| 定州市| 上杭县| 武宁县| 江北区| 遵义市| 河曲县| 哈尔滨市| 西峡县| 民乐县| 台湾省| 公安县| 潞城市| 田阳县| 乌恰县| 南澳县| 泸水县| 太保市| 安泽县|