Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
Ahmed-alkharusi committed Aug 16, 2020
1 parent 920b44e commit 82990a6
Show file tree
Hide file tree
Showing 9 changed files with 563 additions and 0 deletions.
24 changes: 24 additions & 0 deletions Source/Array.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#include "Array.h"
Array Array::operator+(double rhs) {
Array temp(position + rhs, speed + rhs);
return temp;
}
Array Array::operator+(Array rhs) {
Array temp(position + rhs.position, speed + rhs.speed);
return temp;
}
Array Array::operator*(double rhs) {
Array temp(position * rhs, speed * rhs);

return temp;
}
Array& Array::operator=(Array rhs) {
position = rhs.position;
speed = rhs.speed;
return *this;
}

Array::Array(double x_i, double y_i)
:position{ x_i }, speed{ y_i } {
}
Array::Array(const Array& rhs) : position{ rhs.position }, speed{ rhs.speed } {}
16 changes: 16 additions & 0 deletions Source/Array.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#pragma once
class Array


{
public:
double position{ 0 };
double speed{ 0 };
Array(double x_i, double y_i);
Array operator+(double rhs);
Array operator+(Array rhs);
Array operator*(double rhs);
Array(const Array& rhs);
Array& operator=(Array rhs);
};

27 changes: 27 additions & 0 deletions Source/CelestialBody.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#include "CelestialBody.h"
CelestialBody::CelestialBody(Array arr1, Array arr2, double m)
:arr_x{ arr1 }, arr_y{ arr2 }, mass{m} {}

CelestialBody::CelestialBody(Array arr1, Array arr2, double m, float d)
: arr_x{ arr1 }, arr_y{ arr2 }, mass{ m }, diameter{d} {}

CelestialBody CelestialBody::operator +(double rhs) {
CelestialBody temp{arr_x+rhs,arr_y+rhs,mass};
return temp;
}
CelestialBody CelestialBody::operator +(CelestialBody rhs) {
CelestialBody temp{ arr_x + rhs.arr_x,arr_y + rhs.arr_y, mass };
return temp;
}

CelestialBody CelestialBody::operator*(double rhs) {
CelestialBody temp{ arr_x * rhs,arr_y * rhs, mass};
return temp;
}
CelestialBody& CelestialBody::operator=(CelestialBody rhs) {
this->arr_x = rhs.arr_x;
this->arr_y = rhs.arr_y;
return *this;
}
CelestialBody::CelestialBody(const CelestialBody& rhs)
:arr_x{ rhs.arr_x }, arr_y{ rhs.arr_y }, mass{rhs.mass}{}
21 changes: 21 additions & 0 deletions Source/CelestialBody.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#pragma once
#include "Array.h"

class CelestialBody
{private:

public:
Array arr_y{0,0};
Array arr_x{ 0,0 };
double mass{1};
float diameter {1.0f};
CelestialBody(Array arr1, Array arr2, double m);
CelestialBody(Array arr1, Array arr2, double m, float d);
CelestialBody operator +(double rhs);
CelestialBody operator +(CelestialBody rhs);
CelestialBody operator*(double rhs);
CelestialBody& operator=(CelestialBody rhs);
CelestialBody(const CelestialBody& rhs);

};

31 changes: 31 additions & 0 deletions Source/Solar system.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.30330.147
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Solar system", "Solar system.vcxproj", "{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}.Debug|x64.ActiveCfg = Debug|x64
{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}.Debug|x64.Build.0 = Debug|x64
{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}.Debug|x86.ActiveCfg = Debug|Win32
{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}.Debug|x86.Build.0 = Debug|Win32
{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}.Release|x64.ActiveCfg = Release|x64
{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}.Release|x64.Build.0 = Release|x64
{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}.Release|x86.ActiveCfg = Release|Win32
{E33229AE-9AA7-41AC-AC46-6C58C2B62AB0}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {6DB89123-20C9-4959-9FB5-AFE0A29A3294}
EndGlobalSection
EndGlobal
154 changes: 154 additions & 0 deletions Source/Solar system.vcxproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,154 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>16.0</VCProjectVersion>
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{e33229ae-9aa7-41ac-ac46-6c58c2b62ab0}</ProjectGuid>
<RootNamespace>Solarsystem</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="Array.cpp" />
<ClCompile Include="CelestialBody.cpp" />
<ClCompile Include="Source.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="Array.h" />
<ClInclude Include="CelestialBody.h" />
<ClInclude Include="olcPixelGameEngine.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
39 changes: 39 additions & 0 deletions Source/Solar system.vcxproj.filters
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="Source.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="Array.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="CelestialBody.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="olcPixelGameEngine.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="Array.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="CelestialBody.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>
4 changes: 4 additions & 0 deletions Source/Solar system.vcxproj.user
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
</Project>
Loading

0 comments on commit 82990a6

Please sign in to comment.