|
- /*
- ==============================================================================
-
- This file was auto-generated!
-
- ==============================================================================
- */
-
- #ifndef MAINCOMPONENT_H_INCLUDED
- #define MAINCOMPONENT_H_INCLUDED
-
- #include "../JuceLibraryCode/JuceHeader.h"
-
- //==============================================================================
- /*
- This component lives inside our window, and this is where you should put all
- your controls and content.
- */
- class MainContentComponent : public AnimatedAppComponent
- {
- public:
- //==============================================================================
-
-
- MainContentComponent()
- {
- setSize (500, 400);
- setFramesPerSecond (60);
- }
-
- ~MainContentComponent()
- {
- }
-
- void update()
- {
-
- }
-
- void paint (Graphics& g)
- {
- // fill background
- g.fillAll (Colours::black);
-
- int fishLength = 15;
-
- // set the drawing colour
- g.setColour (Colours::white);
-
- // Create a new path object for the spine
- Path p;
-
- //
- for (int i = 0; i < fishLength; ++i)
- {
- float radius = 100 + 10 * sin (getFrameCounter() * 0.1 + i * 0.5f);
- float x = getWidth()/2 + 1.5f * radius * sin (getFrameCounter() * 0.02f + i * 0.12f);
- float y = getHeight()/2 + radius * cos (getFrameCounter() * 0.04f + i * 0.12f);
-
- // draw the ellipses of the fish
- g.fillEllipse(x - i, y - i, 2 + 2*i, 2 + 2*i);
-
- // start a new path at the beginning otherwise add the next point
- if (i == 0)
- p.startNewSubPath(x, y);
- else
- p.lineTo (x, y);
- }
-
- // stroke the path that we have created
- g.strokePath (p, PathStrokeType (4));
-
- }
-
- void resized()
- {
- // This is called when the MainContentComponent is resized.
- // If you add any child components, this is where you should
- // update their positions.
- }
-
-
- private:
- //==============================================================================
-
- // private member variables
-
-
-
-
-
- JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MainContentComponent)
- };
-
-
- Component* createMainContentComponent() { return new MainContentComponent(); };
-
- #endif // MAINCOMPONENT_H_INCLUDED
|