Описание программы (макроса) "Площадь" версии 1.01.

 

Здравствуйте. Приятной Вам работы, успехов, здоровья и счастья в личной жизни.

Изменения в текущей версии:
- исправленна ошибка деления на ноль (если длины сторон нулевые);
- значения масштаба по умолчанию установленно как предельное допустимое значение (раннее было предельное недопустимое значение);
- по желанию пользователя допускается любая погрешность измерений (предоставляется выбор между проверкой введенных данных или продолжением расчетов);
- для вызова макросов добавленны кнопки на стандартной панели управления;
- для произведения окончательных расчетов достаточно вызова пункта меню "Расчет невязок углов" - если данные верны, или пользователя устраивает полученная точность, то будут произведены все расчеты и построения чертежа (пункт меню "Проверка невязок углов и рисунок" нужно вызывать если Вы вручную исправляете углы, либо просто хотите получить значение площади и чертеж по заданным координатам вершин);
- столбцы таблицы, предназначенные для ручного ввода выделены серым цветом, светло-серым - столбец "Приращения" углов, т.к. в нем допускается и программная и ручная корректиеровка.
Переход от версии 1.00 к 1.01 осуществляется простой заменой файла square.dot, все остальные Ваши нарабоки (документы, созданые на основе шабона square.dot версии 1.0) изменять не нужно.
Пока все.
Более удобные инструменты подгонки данных собираюсь реализовать к 31.12.2001 г.

Теперь о "Площади 1.0".

Программа представляет собой набор макросов для MS Word 97/2000. Если вы панически боитесть макро вирусов - не беспокойтесь - программа "лежит" на сервере Microsoft, и хорошо протестирована, можете скачать ее оттуда.
Данная программа предназначена для вычисления площадей и построениячертежей в РЕАЛЬНОМ масштабе ПРОИЗВОЛЬНЫХ многоугольников, как выпуклых так и вогнутых (т.е. имеющих углы большие чем 180 градусов, например девятиконечная зведа ) по величинам углов и длинам сторон,а так же для построения чертежей в реальном масштабе и вычисления площади по Вам известным координатам вершин многоугольника.

Пока возможны два варианта работы программы:

Исходные данные Результаты
1 количество вершин, углы и стороны, координаты первой вершины,
направление (дирекционный угол), допустимая погрешность
.
уточненные значения углов и сторон,
координаты вершин, площадь, чертеж в
реальном масштабе и расположении
2 количество вершин, их координаты,направление (дирекционный угол),
допустимая погрешность
площадь, чертеж в реальном масштабе
и расположении

Пояснение: зеленым цветом выделенны необязательные данные.

Важно!
Многоугольник может быть произвольным, - выпуклым, с пересекающимися сторонами и т.д., в любом случае чертеж будет правильный, но наиболее точный расчет площади гарантируется только если стороны многоугольники (отрезки) не пересекаются.


Взаимодеистиве с макросом осуществляетсяс помощью пунктов меню "Мастер" или кнопкой на "Стандартной панели управления", при обращении к пунктам меню "Мастер"текстовый курсор ОБЯЗАТЕЛЬНО ДОЛЖЕН БЫТЬ В ТАБЛИЦЕ. Ввод - вывод данных и результатов осуществяется в таблицу, чертеж многоугольника изображается на листе, следующим за таблицей. Площадь считаеся несколько приближенно, точность зависит от используемых измерительных приборов, разумеется построение рисунков и вычисление площадей правильных геомертических фигур выполняется так же с небольшой погрешностью, так как используются формулы приближения. НЕ ИЗМЕНЯЙТЕ структуру таблицы! Макрос не будет работать! Допустимые изменения-удаление лишних строк (т.е. если количество углов многоугольника значительно меньше чем строк в таблице - минимально допустимое количество строк - 3).

Порядок работы:

1.Вводим градусные меры углов в столбец таблицы "Измеренные углы", "градусы" минуты (целые и десятые, сотые ... минут) в "Измеренные углы", "минуты", разделитель целых и дробных частей числа - ЗАПЯТАЯ. Измерения нужно проводить так, что бы многоугольник был СЛЕВА от Вас! (стороны прямоуголника не должны пересекаться! - в противном случае гарантируется правильность всех расчетов, кроме площади)

2.Выбираем команду "Расчет невязок углов" в меню "Мастер", программа предупредит что все ручные исправления (если они производились) в столбце таблицы "Исправленные углы" будут пересчитаны. Если Вы впервые обращаетеся к данному пункту меню, то без сомнения нажимаем кнопку "Да", если Вы выбрали данный пукт меню ошибочно, нажимаем "Нет".

3.Затем, появившейся форме вводим количество вершин многоугольника в поле "Введите количество точек" (небольшое отступление: количество вершин многоугольния нужно КАЖДЫЙ раз вводить в ручную, конечно это неудобно, но первоначально программа писалась только для личного пользования, данное неудобство легко устанить, возможно это будет сделано в следующей версии, если будет смысл писать следующую версию), затем вводим точность прибора использованного для измерения углов (транспортира, теодолита или т.п.) в соответсвующем поле, и нажимаем "Ок". Программа вычислит угловую невязку.Если угловая невязка (ошибка изменения углов) равна 0, то переходим к пункту 4, иначе программа поровну распределит невязку на каждый угол в столбце таблице "Исправленные углы", оставшуюся после этого невязку (программа распределяет невязку, если она не менее 0,1*n, n - количество углов многоугольника), нужно распределить в столбец "Исправленные углы".
Внимание! Если после этого Вы опять выберете пункт меню "Мастер" "Расчет невязок углов", то ручные изменения в столбце "Исправленные углы" будут потеряны.Примечание: если Вам сильно надоело править углы, то увеличьте ошибку измерения (точность теодолита в вышеописываемой форме).

4. Если для Вас важно расположение чертежа относительно сторон света, (север вверху, и т.д.) введите 1-й дирекционный угол в столбец таблицы "Дирекционные углы", все остальные дирекционные углы будут вычисленны (дирекционный угол - угол между соответсвующей стороной многоугольника, т.е. в данном случае угол между стороной многоугольника 1-2, и направлением на север). Далеее вводим соответсвенные длины сторон многоугольника (т.е. в таком же порядке как Вы вводили углы), в столбец таблицы "Горизонтальные приложения", первая ячека этого столбца должна быть ПУСТОЙ, т.е. столбец горизонтальных приложений смещен на одну ячейку вниз относительно столбца углов. Ввод осуществляется как в любую другую таблицу, разделитель целой и дробной части числа - запятая, единица измерения - метр.

5. Выбираем пункт меню "Мастер" "Проверка невязки углов и рисунок" в появившейся форме опять вводим количество вершин многоугольника и точность, как в п. 3, допустимую погрешность вычисления площади в поле "Допустимая предельная относительная невязка", и координаты первой точки -если Вам нужны координаты остальных вершин, иначе оставьте координаты по умолчанию или увеличте их (если длины сторон многоугольника превосходят 1000 метров, увеличить нужно по крайней мере в 2 раза). Нажымаем "Ок"

6. Далее программа предложит Вам проводить вычисления - кнопка "Да", нужно выбрать если вычисления ранее не были проведены (см. п 7.), кнопка "Нет" - по вычисленным данным (или введенным Вами - в случае если Вы просто хотите получить чертеж многоугольника по ранее введенным Вами координатам) изобразить многоугольник в реальном масштабе (см. п. 8).

7. Программа проверит угловую невязку, затем (если угловая невязка допустима) относительную невязку, если относительная невязка допустима, предложит начертить план (см. п. 8), иначе Вам нужно будет вручную проветить введенные Вами в таблицу данные (возможно многоугольник с такими углами и длинами сторон просто не существует, например нет треугольника с углами 30,60,90 и сторонами 1,1,1.) или увеличить относитльную невязку (см. п. 5).

8. Далее программа Площадь 1.0 предлжит Вам начертить план, если он Вам нужен - кнопка "Да" диалога. Перед Вами появиться диалоговое окно, с минимально возможным масштабом изображения многоугольника (нужно ввести число большее предложенного), и чекбоксом (при его отметке площадь будет вычислена в квадратных метрах, иначе - в гектара), и нажать "Ок".

9. После небольшой паузы Вы увидите процесс построения многоугольника в РЕАЛЬНОМ масштабе (который Вы указали) и РЕАЛЬНЫХ координатах, с сохраненной ориентацией - север вверху, юг - в низу, справа - восток, слева - запад, а затем и площадь данного многоугольника.

ВСЕ !!!

Немножко истории. Программа Площадь 1.0 была написана в 1997 году для личных нужд (поэтому интерфейс довольно корявый и последовательный) на ВордБейсике (для Ворд 6-95), код для Ворд 97-2000 получен простым конвертированием (извините, время-деньги), и немного "доведен" под ВижуалБейсик. Если кого-то интересует версия для Ворд 6-95 свяжитесь со мной.Интересная деталь, во время написания этой программы я вынужден был написать свои функции sin, cos, ln, exp и некоторые други математические функции которые я не нашел в ВордБейсике (кто знает, они там были реализованыили нет? ), и которые есть в ВижуалБейсике (в данной программе используюся "свои" функции sin, cos..., а не ВижуалБейсика, - нет желания переделывать, а свои функции я писал так, что их точность превосходит точность калькулятора Виндовс, скорость вычисления тоже довольно приемлема, даже на 486 процессоре.)
Труднее всего было реализовать функцию ln(x).

Возможно, если кого-нибудь заинтересует улучшение возможности Площади 1.0, т.е. выход Площади 2.0, я напишу более совершенную версию программы - отлажу интерфейс, введу настройки, их сохранение, ахрив вычислений, избавление от ошибок измерения длин сторон, увеличение точности и скорости вычислений и построения рисунков и другое.Отзывы, вопросы, пожелания, предложения можно направлять по адресу:
pmaznich@mail.ru, в теме укажите "Площадь 1.0",
в Интернете я не постоянно (хотя очень хочется ;), - у каждого свои проблемы, пусть часть Ваших проблем возьмет на себя моя программка) , в течении недели отвечу.
До свидания.

Удачного использования программы Площадь 1.0!
Ни за что никакой ответственности не несу (хотя программу я очень хорошо тестировал, и использовал не один год).

Может что и упустил, извините.
С уважением Мазниченко Павел Владимирович.
Пишите: pmaznich@mail.ru
Информация о новых версия и поддержке :
http://matematik1.narod.ru
или
http://matematik1.h1.ru