<MyRusakov.ru />

Создание движка на PHP и MySQL 2.0

Создание движка на PHP и MySQL 2.0

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC.

В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой.

В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Метод реализующий вычисление пересечений окружности
11.06.2013 21:23:59 Метод реализующий вычисление пересечений окружности Сообщение #1
olegvasil

olegvasil

Эксперт

Эксперт

Дата регистрации:
25.03.2013 22:27:59

Сообщений: 104

Добрый вечер.Михаил подскажите пожалйста формулу для нахождения пересечения окружности
Нужно создать метод принимающий объект окружность и и возвращающий тру если данные окружности пересекаются .Здесь нужна кажется формула
Профиль Ответить
11.06.2013 21:30:55 Метод реализующий вычисление пересечений окружности Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

1) Найти длину отрезка между центрами окружностей.
2) Если сумма радиусов меньше этой длины, то пересекаются, иначе нет.
Профиль Ответить
26.03.2014 13:43:42 Метод реализующий вычисление пересечений окружности Сообщение #3
Goqor89

Goqor89

Новичок

Новичок

Дата регистрации:
04.07.2013 12:18:03

Сообщений: 5

Добрый день Михаил, не подскажете где у меня ошибка?



<?php

class Circle{
private $radius;
private $cent_x;
private $cent_y;
private $radius1;
private $cent_x1;
private $cent_y1;

public function __construct() {
$this-> radius = $radius;
$this-> cent_x = $cent_x;
$this-> cent_y = $cent_y;
$this-> radius1 = $radius1;
$this-> cent_x1 = $cent_x1;
$this-> cent_y1 = $cent_y1;
}

public function Distance ($Circle_1) {
$dist = pow (($this->cent_x1 - $this->cent_x), 2) + pow (($this->cent_y1 - $this->cent_y), 2);
$fdist = sqrt (Distance);
if (($radius + $radius1) >= $fdist)
echo "false";
else echo "true";
}

$Circle_1 = new Circle (5, 6, 0, 8, 8, 0);
$Circle_1 ->Distance ($Circle_1);
?>
Профиль Ответить
29.04.2014 11:06:01 Метод реализующий вычисление пересечений окружности Сообщение #4
tikkiwiki

tikkiwiki

Модератор

Модератор

Дата регистрации:
15.11.2013 15:36:59

Сообщений: 194

Здравствуйте, что пишет интерпретатор? 
Профиль Ответить
29.04.2014 11:18:16 Метод реализующий вычисление пересечений окружности Сообщение #5
Goqor89

Goqor89

Новичок

Новичок

Дата регистрации:
04.07.2013 12:18:03

Сообщений: 5

Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in Z:\home\test\www\index.php on line 28
Профиль Ответить
01.09.2015 18:57:25 Метод реализующий вычисление пересечений окружности Сообщение #6
CyberGenius777

CyberGenius777

Освоившийся

Освоившийся

Дата регистрации:
25.11.2013 14:39:15

Сообщений: 30

Вот

<?
class Circle {

private $x;
private $y;
private $radius;

public function __construct($x, $y, $radius){
$this->x = $x;
$this->y = $y;
$this->rad = $radius;
}
public function setX($x){
$this->x = $x;
}
public function setY($y){
$this->y = $y;
}
public function setRad($radius){
$this->rad = $radius;
}
public function getX($x){
return $this->x;
}
public function getY($y){
return $this->y;
}
public function getRad($radius){
return $this->rad;
}
public function cross($circle){
if($this->sumRad($circle) < $this->getCircleCenter($circle))
echo "Длина между центрами окружностей: ".$this->getCircleCenter($circle).";<br>Сумма радиусов: ".$this->sumRad($circle).";<br>Данные окружности пересекаются";
else echo "Длина между центрами окружностей: ".$this->getCircleCenter($circle).";<br>Сумма радиусов: ".$this->sumRad($circle).";<br>Данные окружности не пересекаются";
}
public function sumRad($circle){
return $this->rad + $circle->rad;
}
public function getCircleCenter($circle){
return sqrt($this->getDistanceBeetwenCenters($circle));
}
public function getDistanceBeetwenCenters($circle){
return pow(($this->x - $circle->x), 2) + pow(($this->y - $circle->y), 2);
}
public function __toString(){
return "Окружность с координатами(".$this->x.";".$this->y." и радиусом ".$this->rad;
}
public function __destruct(){
echo "<br> Объект удален";
}
}

$circle = new Circle(25,46,2);
$circle2 = new Circle(22,42,4);
echo $circle."<br>";
echo $circle2."<br>";
echo $circle->cross($circle2);

?>
Профиль Ответить
24.11.2016 19:10:56 Метод реализующий вычисление пересечений окружности Сообщение #7
moisey

moisey

Новичок

Новичок

Дата регистрации:
24.11.2016 19:02:35

Сообщений: 1

CyberGenius777, для чего нужны в классе Circle методы setX($x), setY($y), setRad($radius), getX($x), getY($y), getRad($radius)? По-моему, работать будет и без этих методов.
Профиль Ответить